Jump to content
  • 0

Кроссдоменная авторизация и передача данных


Veseloff
 Share

Question

Есть один набор скриптов, который рулит сразу тремя сайтами одного хозяина. В зависимости от домена показывается разный набор шаблонов, позиции каталога выбираются из разных категорий и чуть-чуть отличаются маленькие настройки — зато админка одна и, если что-то надо сделать, то всё делается изменением одного скрипта, а не трёх. Всё хорошо, но понадобилась авторизация и «корзина». Поскольку домены разные, то в куках (и, значит, в сессиях) хранить данные никак связать не получается. Как можно реализовать эти вещи, когда домены разные, есть у кого-нибудь опыт?

Link to comment
Share on other sites

6 answers to this question

Recommended Posts

  • 0

Есть один набор скриптов, который рулит сразу тремя сайтами одного хозяина. В зависимости от домена показывается разный набор шаблонов, позиции каталога выбираются из разных категорий и чуть-чуть отличаются маленькие настройки — зато админка одна и, если что-то надо сделать, то всё делается изменением одного скрипта, а не трёх. Всё хорошо, но понадобилась авторизация и «корзина». Поскольку домены разные, то в куках (и, значит, в сессиях) хранить данные никак связать не получается. Как можно реализовать эти вещи, когда домены разные, есть у кого-нибудь опыт?

ну у нас тоже 1 движок на кучу сайтов ,определяется всё через сид (session id) и хранистя какраз в сессии. вопрос то в чем , в чем проблема ?

  • Like 1
Link to comment
Share on other sites

  • 0

Опыта нет, но как вариант данные хранить в базе, а авторизацию подтверждать через token. Во всяком случае я бы капал в эту сторону. Если есть альтернативные решения с удовольствием о них узнаю.

Link to comment
Share on other sites

  • 0

ну у нас тоже 1 движок на кучу сайтов ,определяется всё через сид (session id) и хранистя какраз в сессии. вопрос то в чем , в чем проблема ?

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

example.com/?key=%айдишник_сессии%

где %айдишник_сессии% это тот айдишник, который получил пользователь при первом заходе на любой из сайтов. Ну и в самом начале делаю так

if (!empty($_GET['key']))
{
setcookie("PHPSESSID", $_GET['key'], time()+86400, "/");
$_COOKIE['PHPSESSID']=$_GET['key'];
}


session_start();

и всё работает как следует. В принципе, всё логично — сессия ведь определяется по значению в куке.

Link to comment
Share on other sites

  • 0

example.com/?key=%айдишник_сессии%

где %айдишник_сессии% это тот айдишник, который получил пользователь при первом заходе на любой из сайтов. Ну и в самом начале делаю так

if (!empty($_GET['key']))
{
setcookie("PHPSESSID", $_GET['key'], time()+86400, "/");
$_COOKIE['PHPSESSID']=$_GET['key'];
}


session_start();

и всё работает как следует. В принципе, всё логично — сессия ведь определяется по значению в куке.

Ну в общем-то логично, при условии что все домены на одном веб-сервере висят.

Link to comment
Share on other sites

  • 0

ну у нас тоже 1 движок на кучу сайтов ,определяется всё через сид (session id) и хранистя какраз в сессии. вопрос то в чем , в чем проблема ?

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

example.com/?key=%айдишник_сессии%

где %айдишник_сессии% это тот айдишник, который получил пользователь при первом заходе на любой из сайтов. Ну и в самом начале делаю так

if (!empty($_GET['key']))
{
setcookie("PHPSESSID", $_GET['key'], time()+86400, "/");
$_COOKIE['PHPSESSID']=$_GET['key'];
}


session_start();

и всё работает как следует. В принципе, всё логично — сессия ведь определяется по значению в куке.

дадада у нас также всё

Link to comment
Share on other sites

  • 0

drupal -> multiciting (грубо говоря, имея общее ядро, ряд наследуемых настроек и какие то общие таблицы БД можно сделать частично зеркальные сайты, каждый со своими специфичными функциями, настройками и прочим)

Edited by Shift-Web
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy