|
|
|
| Всем привет. Стоит задача передать регистрационную $_SESSION с домена на субдомен, т.е. с example.com на client.example.com. Информации в сети достаточно, но почему-то не выходит, пробовал такие методы:
в .htaccess
php_value session.cookie_domain .example.com
|
получил ошибку сервера 500
в php
ini_set('session.cookie_domain', '.example.com' );
|
в php
session_set_cookie_params(0, '/', '.example.com');
session_start();
|
в php
if(!session_id()){
ini_set('session.use_cookies', 'On');
ini_set('session.use_trans_sid', 'Off');
ini_set('session.cookie_domain', '.example.com');
session_set_cookie_params(0, '/', '.example.com');
session_start();
}
|
Писал в поддержку хостинга, то говорят, что так нельзя, т.е. у них запрещено передавать. Но сообщили мне это как-то не внятно, поэтому я усомнился в компетентности.
Как вариант писать хеш в cookie и в базу, потом вылавливать юзера и авторизовать, но это не совсем безопасно. (еще не проверил метод)
Передавать в урле $_SESSION нет желания, также не безопасно на сколько знаю.
Подскажите как быть? Спасибо. | |
|
|
|
|
|
|
|
для: TetRiska
(26.05.2015 в 20:42)
| | Вот еще раз перепроверил. Все же верно хостер сказал. На домене example.com прописал такое:
session_set_cookie_params(0, '/', '.example.com');
session_start();
$_SESSION['id'] = 5;
|
Перезапустил браузер. Смотрю кука на example.com и client.example.com одинакова, но на client.example.com массив $_SESSION пуст.
session_start();
print_r($_SESSION);
|
| |
|
|
|