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

Mick_20

  • Завсегдатай
  • 1025
  • 3 / 0
  • Что тут писать?
Здравствуйте,

На работе просят реализовать одну регистрацию для двух сайтов, чтобы посетители не регистрировались два раза.

Как лучше реализовать такое?

Пока думаю просто дописать запросы в БД второго сайта.
*

AlexB

  • Завсегдатай
  • 1973
  • 54 / 2
Re: Регистрация на двух сайтах
« Ответ #1 : 10.11.2020, 07:40:53 »
Это  оптимально
*

Mick_20

  • Завсегдатай
  • 1025
  • 3 / 0
  • Что тут писать?
Re: Регистрация на двух сайтах
« Ответ #2 : 10.11.2020, 09:17:47 »
Данные о пользователе нужно добавить только в эти таблицы?

#_users
#_user_usergroup_map
*

AlexB

  • Завсегдатай
  • 1973
  • 54 / 2
Re: Регистрация на двух сайтах
« Ответ #3 : 10.11.2020, 09:23:43 »
да
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: Регистрация на двух сайтах
« Ответ #4 : 10.11.2020, 13:44:20 »
Оба сайта на Joomla? сервер бд один или разные?
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

Mick_20

  • Завсегдатай
  • 1025
  • 3 / 0
  • Что тут писать?
Re: Регистрация на двух сайтах
« Ответ #5 : 11.11.2020, 09:28:43 »
Оба сайта на Joomla? сервер бд один или разные?

Оба сайта на Joomla.
В phpMyAdmin у каждого сайта только его таблица.
Тоже самое и файлы.
Наверное для каждого свой хостинг создан на сервере.
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Регистрация на двух сайтах
« Ответ #6 : 11.11.2020, 23:39:23 »
Если сайты аффилированы, то лучше держать 1 общую таблицу.
В противном случае - сделать API аля "Регистрация через Фейсбук".
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Mick_20

  • Завсегдатай
  • 1025
  • 3 / 0
  • Что тут писать?
Re: Регистрация на двух сайтах
« Ответ #7 : 13.11.2020, 07:43:56 »
Задача сделать именно костыль, чтобы дублировалась регистрация.
*

AlexB

  • Завсегдатай
  • 1973
  • 54 / 2
Re: Регистрация на двух сайтах
« Ответ #8 : 13.11.2020, 08:26:48 »
Задача сделать именно костыль, чтобы дублировалась регистрация.
ну допиливайте модули регистрации, что бы и с одного и с другого отправляло в обе бд данные
*

sivers

  • Живу я здесь
  • 2585
  • 359 / 0
Re: Регистрация на двух сайтах
« Ответ #9 : 13.11.2020, 09:01:58 »
Как лучше реализовать такое?
Можно написать плагин группы user, который будет отслеживать добавление/удаление юзера и дублировать во вторую БД. Установить его желательно на оба сайта, чтоб синхронизация работала в обе стороны.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

Mick_20

  • Завсегдатай
  • 1025
  • 3 / 0
  • Что тут писать?
Re: Регистрация на двух сайтах
« Ответ #10 : 19.11.2020, 12:16:04 »
Спасибо всем за помощь!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не работает регистрация и вход, пускает только админа!

Автор xaxa

Ответов: 2
Просмотров: 936
Последний ответ 27.09.2019, 14:15:10
от xaxa
Очень долгая авторизация в админ панель. При чем на всех сайтах

Автор Victor333

Ответов: 15
Просмотров: 1187
Последний ответ 13.11.2017, 14:58:53
от SeBun
Не работает регистрация на сайте.

Автор Sergunqa

Ответов: 6
Просмотров: 1747
Последний ответ 30.06.2017, 15:16:46
от SeBun
Проблема с переводом двух фраз в компоненте Контакты Joomla 3.6

Автор Olga113

Ответов: 20
Просмотров: 1515
Последний ответ 02.04.2017, 22:53:17
от robert
Один материал на разных сайтах

Автор KatyaNet

Ответов: 1
Просмотров: 1278
Последний ответ 29.03.2016, 13:54:00
от voland