Я пытаюсь создать процесс единого входа. Реализованный мной метод использует хранение данных сеанса в базе данных.
Когда новый пользователь заходит на сайт (www.example2.com) проверяется таблица аутентификации. Поскольку это их первый визит на сайт, совпадений не будет.
Браузер перенаправляется на сервер аутентификации www.example1.com/authenticate.php?session_id=ABC123, где ABC123 представляет идентификатор сеанса, созданный на www.example2.com. Идентификатор сеанса, который затем генерируется на www.example1.com, сохраняется вместе с идентификатором сеанса с использованием параметра, установленного в URL-адресе.
Затем пользователь перенаправляется обратно на www.example2.com, и должно быть найдено совпадение идентификаторов сеансов.
Это WAS отлично работало в FireFox, но когда я попробовал его в Chrome, я заметил, что идентификатор сеанса, генерируемый при перенаправлении браузера обратно на www.example2.com, является новым идентификатором сеанса. В результате создается бесконечный цикл. Это поведение не проявлялось и в FireFox.
Что вызывает создание нового идентификатора сеанса? Что еще более важно, что я могу сделать, чтобы остановить это?
Заранее спасибо!
EDIT
У меня была логическая ошибка, которая вызывала бесконечный цикл. Теперь это снова работает в FireFox, но бесконечный цикл все еще происходит в Chrome и Internet Explorer.