Новости Joomla

Загадочный параметр $live_site в configuration.php Joomla

Загадочный параметр $live_site в configuration.php Joomla

Давным-давно, когда Joomla ещё была маленькой, в неё внедрили параметр $live_site. В ней хранился домен текущего сайта на случай, если Joomla не могла его определить из-за неверной настройки сервера. Нужно это было для разных SEO-компонентов, для использования редиректов и т.д.

Со временем для работы собственно сайта этот параметр перестал быть нужным. Уже в начале 2010-х стали встречаться рекомендации оставлять этот параметр пустым, дабы оный не привёл к лишним проблемам и путанице. Тем более, в web-админке нет места, где его можно указать или посмотреть его значение. Только в configuration.php, а туда смотрят не часто.

Однако, параметр всё же остался в ядре Joomla. Зачем он нужен? А нужен он в 2-х случаях:

  • для работы класса Joomla\CMS\Uri\Uri, который часто используется в коде Joomla для работы методов
    Uri::root() и
    Uri::base(), а значит может влиять и на работу в том числе ajax-скриптов.
  • для работы Joomla в CLI - командной строке сервера. В случае если вы используете в вашем CLI-плагине методы опять-таки класса Uri, то CLI ничего не знает о текущем домене, так как запускается вне web-сервера.

Поэтому домен нужно указывать принудительно. Либо с помощью параметра командной строки

--live-site, например,
—live-site=https://site.ru/. Со слешем на конце, иначе в CLI адрес сайта станет
https://site.rujoomla.php.Либо в параметре
$live_site в файле configuration.php, так как
CliApplication берёт настройку оттуда, если параметр команды не указан или пуст.

⚠️ Иначе в качестве хоста и url класса Uri будет установлено https://joomla.invalid/set/by/console/application. В самом же коде команды получить параметр

$live_site можно из объекта приложения

<?php protected function doExecute(InputInterface $input, OutputInterface $output): int { //... $live_site = $this->getApplication()->get('live_site'); //... }

и исходя из этого строить дальнейшую логику.

0 Пользователей и 1 Гость просматривают эту тему.
  • 2 Ответов
  • 2066 Просмотров
*

Sergei1212

  • Новичок
  • 1
  • 0 / 0
После обновления Joomla и ее модулей до версии Joomla! 3.6.4 Stable пропала возможность установки UTM меток формата site.ru/?любой параметр. При установки UTM метки происходит автоматический редирект. Нужно вернуть возможность установки UTM Метки. Проблема в SEF модуле. В данный момент решить ее не можем. Пробовал отключать все настройки по очереди. При отключении модуля - проблема решается, но и исчезает ЧПУ, что недопустимо. Подскажите, где исправить проблему ?
*

sniperIvan

  • Новичок
  • 1
  • 0 / 0
Проблему решить удалось?
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
вы лучше спросите - проблему увидеть удалось? ни у кого ее больше нет, проблемы этой...
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не работают SEF-ссылки на Joomla 5

Автор Detonator

Ответов: 2
Просмотров: 2052
Последний ответ 29.03.2025, 07:26:44
от azm1n
Как убрать home в в адресной строке?

Автор denimet

Ответов: 9
Просмотров: 2989
Последний ответ 02.05.2024, 11:39:18
от Zaka
Расширение SEF Wizard — улучшение маршрутизации и ЧПУ в Joomla! Инструменты SEO - администратора

Автор Филипп Сорокин

Ответов: 525
Просмотров: 53475
Последний ответ 22.10.2022, 12:14:38
от Lemonez
Убрать из ссылки /images

Автор step147

Ответов: 4
Просмотров: 2827
Последний ответ 17.08.2021, 11:19:32
от step147
Как убрать ID из URL Joomla 3?

Автор SaxMusicOnly

Ответов: 142
Просмотров: 59790
Последний ответ 02.03.2021, 14:47:35
от Vasiliy111