Кроссдоменная авторизация на Joomla 3

Или единая авторизация на сайте.
Поставлена задача:
— имеется два независимых joomla сайта с одной БД, но разными префиксами. Вы заходите на сайт site1.ru и авторизуетесь на нем, потом переходите на другой поддомен этого сайта example.site1.ru, и там вы автоматически являетесь авторизованными.

Получается нам необходимо с главного сайта site1.ru объединить в БД таблицы сессии и юзеров.

Из всех готовых решений, а их раз-два и обчелся нашёл одно рабочее, с использованием платного расширения MightySites (на варезниках можно найти бесплатно или напишите мне в личку). И так рассмотрим его.

1. Заходим в админку поддомена example.site1.ru и устанавливаем расширение MightySites.
2. Включаем два установленных плагина:
System — MightySites single login/logout
System — MightySites

3. Заходим в компонент MightySites и видим наш сайт example.site1.ru. Нажимаем кнопку Создать.

4. Вводим название основного сайта site1.ru и переходим к следующей вкладке Database.

5. Подключаем базу site1.ru, вводим Имя БД, Префикс, Пользователя и Пароль (если есть) и нажимаем кнопку Сохранить.

6. Далее переходим во вкладку Single Login/Logout и включаем переключатель Single Login на Да.

В таблице Sites в поле Domain пишем example.site1.ru, а в поле Secret Key пишем соответственно его ключ (его нужно взять из вкладки Advanced сайта example.site1.ru) и нажать Сохранить и закрыть.
как?

  1. Переходим на главную страницу компонента MightySites (можно в новой вкладке), нажимаем на сайт example.site1.ru.
  1. Переходим во вкладку Advanced копируем Secret Key и вставляем его куда написано выше.

7. Переходим на главную страницу компонента MightySites, нажимаем на сайт example.site1.ru и повторяем пункт 6. касаемо этого сайта. Переключаем переключатель. В поле Sites пишем site1.ru а в Secret Key его ключ. Должно получиться так:

8. Переходимо во вкладку Data Sources, включаем выключатель Data Overload на Включено. Далее, в столбце Database Tables, нажимаем на кнопку *Display Tables*.

После чего выбираем site1.ru в следующих таблицах:
#__session
#__user_keys
#__user_notes
#__user_profiles
#__user_usergroup_map
#__usergroups
#__users

Должно получиться так:

9. В обоих сайтах во вкладке Advanced, в поле Cookie Domain пишем .site1.ru.

10. Последний пункт. Заходим в админку двух сайтов и переходим в Общие настройки. Далее, заполняем Настройки Cookie, следующим образом:
Cookie домена: .site1.ru
Путь для Cookie: /

собственно всё, проверяем. Если всё сложно и не получается настроить, по вашим просьбам могу снять видео, как это всё настроить.

Поделиться
Отправить
Запинить
2018   joomla 3