동일한 세션을 공유하는 두 개의 하위 도메인이 있습니다. 나는 하나의 서버를 가지고 사용하고, 나는 모든 하위 도메인 같은 쿠키를 유지 할 수 있도록하여 php.ini
을 다음했다 :redis의 PHP 세션은 session.cookie_domain 구성을 무시합니다.
session.cookie_domain = ".mydomain.com"
을 서버가 다음 설정 쿠키 반환하게이 구성을 사용 :
Set-Cookie: PHPSESSID=aumsloucmjspvs1mbvromqq1b5; path=/; domain=.mydomain.com
을
이제 서버 수가 거의 없으므로 모든 서버간에 세션을 공유하려면 Redis
을 사용하고 싶습니다. 나는 서버를 설정하고 다음 php.ini
에 추가 :
session.save_handler = redis
session.save_path = tcp://192.1.1.1:6379?auth=noauth
세션은 서버에 성공적으로 저장되지만 반환 세트 - 쿠키는 올바르지 않습니다
이Set-Cookie: PHPSESSID=cec074e4d961ff6c800c21b7466c7d5a; path=/
그래서에 옆에있는 전화 클라이언트가 다른 하위 도메인에 연결하면 첫 번째 하위 도메인에서 가져온 쿠키가 보내지지 않습니다.
나는 phpinfo()
에 세션에서, 2.2.5 레디 스, PHP 5.3.18을 사용하고 있습니다 :
Directive Local Value Master Value
session.auto_start Off Off
session.bug_compat_42 Off Off
session.bug_compat_warn Off Off
session.cache_expire 180 180
session.cache_limiter nocache nocache
session.cookie_domain .example.com .example.com
session.cookie_httponly Off Off
session.cookie_lifetime 0 0
session.cookie_path / /
session.cookie_secure Off Off
session.entropy_file no value no value
session.entropy_length 0 0
session.gc_divisor 1000 1000
session.gc_maxlifetime 43200 43200
session.gc_probability 1 1
session.hash_bits_per_character 5 5
session.hash_function 0 0
session.name PHPSESSID PHPSESSID
session.referer_check no value no value
session.save_handler files files
session.save_path /var/lib/php/session /var/lib/php/session
session.serialize_handler php php
session.use_cookies On On
session.use_only_cookies On On
session.use_trans_sid 0 0
어떤 생각 내가 어떻게 서버를 강제 할 수있는 적절한 설정 - 쿠키를 보내?
이해가 안 : 레디 스 접두사가 나를 위해 문제를 해결 가지고 –
yea, 나는 그것을 시도했지만 도움이되지 않았다. ( – Kuf
런타임에'ini_get ('session.cookie_domain')'에 대해 어떤 값을 얻습니까? –