Главная страница / Советы / Единая регистрация и авторизация на нескольких сайтах
апрель 18 2007

Единая регистрация и авторизация на нескольких сайтах

celsoft 18 апреля 2007 Советы 45 317

Дорогие друзья,

Сегодня хотелось бы рассказать вам об одном из нововведении версии 5.7, а именно о том что в скрипт добавлена поддержка единой регистрации и авторизации на ваших сайтах, которые могут находится на различных доменах и работать под управлением разных копий скрипта, но при этом вашим пользователям достаточно зарегистрироваться только на одном из ваших сайтах и в дальнейшем использовать свой логин и пароль на других ваших сайтах. Единственным условием для реализации данной возможности является то, что все домены должны иметь доступ к одной и той же MySQL базе данных, в пределах одного хостера это не проблема, если хостеры разные, то MySQL сервер должен разрешать внешние подключения.

Внимание: несмотря на то что скрипт поддерживает работу с несколькими проектами, это не меняет условий лицензирования и одна лицензия выдается на один домен второго уровня, и для другого домена вам понадобится еще одна лицензия.

Итак рассмотрим более подробно как вам реализовать и использовать данную возможность:

Нам необходимо установить скрипт на основной домен, допустим http://site.ru/. Для этого делаем все как обычно, закачиваем файлы скрипта на сервер и запускаем мастер установки скрипта install.php. После того как скрипт проведет тестирование вам необходимо будет заполнить данные для доступа к MySQL серверу.

Например:

Сервер MySQL: localhost
Имя базы данных: datalife
Имя пользователя: root
Пароль: password

Эти данные вам предоставляет ваш хостер.

Следующим параметром идет Префикс, этот параметр вы можете определить и указать самостоятельно, мы например укажем: site

После того как мы успешно установили скрипт на один домен, нам необходимо установить скрипт на другой возмем для примера http://games.site.ru/. Делаем все по аналогии и данные для доступа к MySQL серверу указываем теже самые что и для первого сайта:

Сервер MySQL: localhost
Имя базы данных: datalife
Имя пользователя: root
Пароль: password

Внимание устанавливать скрипт нужно в ту же базу данных, что и первый сайт. Единственным отличием является это параметр Префикс, который мы укажем другой, например укажем: games.

Итак мы получили два самостоятельных сайта http://site.ru/ и http://games.site.ru/, которые работают отдельно и между собой не связаны. Поэтому следующей нашей задачей является объединить авторизацию и регистрацию на этих сайтах. Для этого мы заходим по FTP на наш второй сайт http://games.site.ru/ и открываем файл engine/data/dbconfig.php, находим там строчку:

define ("USERPREFIX", "games");


и заменяем ее на

define ("USERPREFIX", "site");


Другими словами мы поставили для параметра USERPREFIX префикс от первого сайта. После этих действий ваш второй сайт будет использовать базу данных для пользователей и групп пользователей от первого сайта, а для всего остального будет использовать собственную отдельную базу данных.

Внимание: Некоторые продвинутые пользователи после этих действий решат удалить неиспользуемые в дальнейшем MySQL таблицы, но мы предостерегаем вас от этих действий, маленькие и неиспользуемые таблицы не будут вам мешать, но так как вам придется обновлять в дальнейшем каждый отдельно, то во избежания конфликтов вам нужно оставить эти таблицы, т.к. они также будут проходить процедуру обновления структуры.

Ну вот в принципе и все, как видите все достаточно просто.

Удачи вам и всего наилучшего.

Комментарии

  1. celsoft (Администраторы)

    15 января 2018 00:04 4 136 комментариев
    Цитата: AntiPlagiat
    Как сделать так, чтобы авторизовавшись на .ru сайте и перейдя на .com сайт, быть авторизованным и на .com?

    Никак, и это не ограничение DLE, это ограничения браузеров. Они не пошлют куки от одного домена на другой домен. Это вопрос безопасности в браузерах.
  2. AntiPlagiat (Клиенты)

    15 января 2018 00:10 13 комментариев
    Я так и думал, что дело в куках, но есть сайты у которых это решено, к примеру codecanyon.net и themeforest.net, с первого переходя на второй остаешься авторизованным.
  3. celsoft (Администраторы)

    15 января 2018 02:16 4 136 комментариев
    Цитата: AntiPlagiat
    Я так и думал, что дело в куках, но есть сайты у которых это решено, к примеру codecanyon.net и themeforest.net, с первого переходя на второй остаешься авторизованным.

    Эти решения требуют персонализированного подхода, и делаются под конкретные сайты. Какого либо универсального решения, которое может быть в общем дистрибутиве, нет.
  4. alter (Посетители)

    25 сентября 2020 11:09 1 комментарий
    Подскажите, немного не понял.
    Получается 2 базы будут физические или одна с разными префиксами?
  5. celsoft (Администраторы)

    25 сентября 2020 14:34 4 136 комментариев
    база одна, таблицы разные с разными префиксами

Информация

Комментирование публикаций доступно только пользователям имеющим действующую лицензию на скрипт. Если вы уже приобретали скрипт, то вам необходимо зайти на сайт под своим клиентским аккаунтом.

Календарь

«    Ноябрь 2024    »
ПнВтСрЧтПтСбВс
 123
45678910
11121314151617
18192021222324
252627282930 

Опрос на сайте

Совершаете ли вы покупки в интернет?