Почему я не могу передавать пользовательские сессии между поддоменами? - PullRequest
2 голосов
/ 28 апреля 2009

Прежде всего, я использовал ВСЕ предложенные методы в этой статье: Разрешить перенос php-сессий на субдомены

Для вашего удобства вот несколько советов, которым я уже следовал:

Здесь 3 варианта.

Поместите это в свой php.ini:

session.cookie_domain = ".example.com"

В вашем .htaccess:

php_value session.cookie_domain .example.com

Как первое, что в вашем сценарии:

ini_set('session.cookie_domain','.example.com' );

У меня есть 9 поддоменов (losangeles.mysite.com, sandiego.mysite.com и т. Д.), И я хотел бы, чтобы пользователи могли оставаться в системе между ними. Однако на данный момент сервер рассматривает каждый поддомен как полностью автономный сайт с отдельными сеансами.

Могу ли я еще что-нибудь сделать? Или как я могу устранить это?

1 Ответ

4 голосов
/ 28 апреля 2009

Я подозреваю, что файлы cookie устанавливаются для .foo.example.com вместо .example.com. Попробуйте установить надстройку Live HTTP Headers для Firefox и проверить, как устанавливаются файлы cookie.

Чтобы сделать это, откройте Live HTTP Headers и, открыв окно, перейдите на страницу, которая устанавливает cookie. В окне должна быть строка, которая выглядит следующим образом.

Set-Cookie: lng = en-US; Путь = /; домен = .example.com;

Если файл cookie установлен для домена = .foo.example.com; тогда вы знаете, в чем проблема. Однако, если доменом является .example.com, происходит что-то еще.

Кроме того, если куки устанавливаются для .example.com на foo.example.com, проверьте, отправляет ли браузер куки на bar.example.com. Это должно помочь отследить, где проблема.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...