Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Сессия для www и без


Автор: psworld 20.8.2007, 14:49
Как можно объединить сессии для домена с www и без, иначе для скрипта - это 2 разных пользователя?

Автор: Rigel 20.8.2007, 15:00
Цитата(psworld @ 20.8.2007,  14:49)
Как можно объединить сессии для домена с www и без, иначе для скрипта - это 2 разных пользователя?

Сессии, строго говоря, никак к домену не привязаны - если их не привязать специально. Так что смотри внимательно - где-то ты эту привязку пропустил.

Автор: psworld 20.8.2007, 15:08
В том и вопрос - где?

Я полагаю, это разделение происходит в куках, где хранится ключ к сессии. Главное как пофиксить?

Автор: Rigel 20.8.2007, 15:31
Включи передачу сессии через параметы. Тогда, если куки и не передадут значение между доменами, то параметры передадут. Честно говоря, никогда только на куки не полагался, поэтому сразу и не понял, в чем сложность. Почитай http://www.phpfaq.ru/session Нужно установить в единицу переменную session.use_trans_sid с помощью команды ini_set() - http://php.net/ini_set 

Автор: Golda 21.8.2007, 07:57
чтобы куки были видны в поддамене, нужно явно указать домен, на который они распространяются с точкой впереди. Т.е. для sample.com, www.sample.com, forum.sample.com... нужно ставить куки так

Код

setcookie ("var", $val, time() + 3600, '/', '.sample.com');


'/' означает, что куки будут доступны для любого пути внутри заданного домена. Можно поменять. Это умолчательное поведение.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)