Новости 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 Гость просматривают эту тему.
  • 6 Ответов
  • 1572 Просмотров
*

yarek

  • Осваиваюсь на форуме
  • 30
  • 2 / 0
Привет всем. Плиз помогите. После обновления до 3.9.23 появилась странная проблема. Когда сохраняю материал выскакивает белый экран и ошибка: Error: Failed to start application: Could not connect to MySQL server.
После нескольких обновлений страницы оказывается что материал все таки сохранен, но внести изменения уже не удается. Опять та же ошибка при сохранении.
настройки базы данных проверил - все актуально. С недавних пор использую PHP 7.3

Буду благодарен за помощь.
« Последнее редактирование: 21.01.2021, 15:05:17 от yarek »
*

wishlight

  • Гуру
  • 5052
  • 314 / 1
  • От 300 руб быстрый хостинг. Сервера.
Лог ошибок php и лог MySQL надо посмотреть.
*

yarek

  • Осваиваюсь на форуме
  • 30
  • 2 / 0
Лог ошибок PHP

PHP Fatal error: Uncaught JDatabaseExceptionConnecting: Could not connect to MySQL server. in /home/karpatyt/karpatytur.info/www/libraries/joomla/database/driver/mysqli.php:173
Stack trace:
#0 /home/karpatyt/karpatytur.info/www/libraries/joomla/database/driver.php(1460): JDatabaseDriverMysqli->connect()
#1 /home/karpatyt/karpatytur.info/www/libraries/src/Table/User.php(87): JDatabaseDriver->loadAssoc()
#2 /home/karpatyt/karpatytur.info/www/libraries/src/User/User.php(880): Joomla\CMS\Table\User->load('800')
#3 /home/karpatyt/karpatytur.info/www/libraries/src/User/User.php(943): Joomla\CMS\User\User->load('800')
#4 [internal function]: Joomla\CMS\User\User->__wakeup()
#5 /home/karpatyt/karpatytur.info/www/libraries/vendor/joomla/registry/src/Registry.php(89): unserialize('O:8:"stdClass":...')
#6 /home/karpatyt/karpatytur.info/www/libraries/src/Session/Session.php(386): Joomla\Registry\Registry->__clone()
#7 /home/karpatyt/karpatytur.info/www/libraries/joomla/session/handler/native.php(189): Joomla\CMS\Session\Session->getData( in /home/karpatyt/karpatytur.info/www/libraries/joomla/database/driver/mysqli.php on line 173
*

yarek

  • Осваиваюсь на форуме
  • 30
  • 2 / 0
И так проблема решилась. И конечно не сама по себе. Сначало были большие надежды на очередное обновление но оно ничего не принесло. Анализ лога показал что все упирается в ограничения PHP. Кстати те же подскаски можна было найти и на других форумах. Речь идет о php_memory_limit. Увы на моем хостинге максималка 128мб. Действиельно при включении услуги "турбо" (временное увеличение до 256 мб) проблема исчезала. Возник вопрос почему раньше этого не было. Так вот пошел проверять роботу базы данних на хостинге и обнаружил что у базе есть два медленных запроса. Все они относились к таблице _finder_terms. Начал разбирать что за таблица - оказалось это таблица компонента "Умный поиск". После недолгих поисков в сети причина стала очевидной: таблица становится слышком тяжелой через переполнение информацией об индексировании сайта. Что делать? Заходим в компонент "Умный поиск" и удаляем все индекса. И вуаля: первоечередная проблема тоже пропала. Все сохраняется и дисконект с базой тоже пропал.
Проблема кажись решена, но остались вопросы, почему так происходит и как уберечься от таких проблем. скажем так на опережение в настройках данного компонента снизил все показатели ограничений. очевидным есть тот факт что подобная проблема имеет шанс объявиться на сайтах с большим количеством информации. Ну и второй вариант не попадаться - отказаться от использования компонента "Умный поиск". надеюсь информация кому то пригодится.
*

wishlight

  • Гуру
  • 5052
  • 314 / 1
  • От 300 руб быстрый хостинг. Сервера.
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Нафиг этот умный поиск нужен я так за все годы и не помнил, в моей сборке от всегда отключен.
Кинул + за детальный самостоятельный разбор, редко такое бывает.

P.S. может в FAQ по тройке кинуть ответ? Кто его сейчас ведет я не в курсе
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

wishlight

  • Гуру
  • 5052
  • 314 / 1
  • От 300 руб быстрый хостинг. Сервера.
P.S. может в FAQ по тройке кинуть ответ?

Народ предупредить  ;D
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Нужна проф помощь в обновлении Joomla на лок.сервере osp. Можно платно

Автор Fati

Ответов: 0
Просмотров: 177
Последний ответ 16.06.2025, 16:40:04
от Fati
Помогите с БАГом в панели администратора Joomla 3

Автор akteon25

Ответов: 2
Просмотров: 1168
Последний ответ 26.02.2025, 16:41:56
от akteon25
Версии РНР и Joomla 3

Автор Ebelous

Ответов: 8
Просмотров: 2937
Последний ответ 27.01.2025, 20:38:45
от pavelrer
pptx в теле материала сайта

Автор VIK4

Ответов: 0
Просмотров: 1071
Последний ответ 24.10.2024, 13:04:04
от VIK4
Trouble Upgrading from Joomla 3.8 to 3.9

Автор melissa00

Ответов: 0
Просмотров: 1760
Последний ответ 26.07.2024, 10:03:51
от melissa00