2014-03-12 2 views
0

두 개의 도메인이있는 단일 서버가 있습니다. 동일한 세션 ID를 사용합니다 (두 서버에서 "PHPSESSID"의 쿠키 값을 수동으로 변경하거나 session_start 이전에 session_id (...)를 사용한다고 가정 해 봅시다). 두 도메인에서 사용하는 세션 파일이 동일하므로 디스크에서 확인했습니다.동일한 서버의 도메인간에 세션 공유

도메인을 변경하면 세션이 삭제됩니다. 나는 두 영역 모두에 대해 정리하고 세션에 아무 것도 쓰지 않고 말합니다. 이 같은 서버에 몇 주 전에 일하지, 아무것도 것을

를 적어 둡니다 내가 디버그에 사용하고 스크립트는 이러한이다

을 (적어도 우리가 수동으로 업그레이드/아무것도 변경하지 않은) 변경, 동일

SET 세션 :

<? 
session_id(PUT_HERE_THE_SAME_SESSION_ID); 
session_start(); 
$_SESSION['KEY'] = 'VALUE'; 
?> 

CHECK 세션 :

<? 
session_start(); 
echo "SESSION ID: ".session_id()."<br>\n"; 
print_r($_SESSION); 
?> 
,369 각 서버

마법의 동작 : -
체크 다시> EMPTY 확인, B에
검사 세션을에
CHECK 세션에
SET 세션, 모든
새로 고침, 잠깐 확인 또는 그 밖의 무엇 A의 다음 확인 A -> 비 었어 !!!!!

당신은 어떤 좋은 제안은 감사 B.

을 교환하면 동일한 동작.
다른 방법으로이 작업을 수행하고 싶지는 않습니다. 무슨 일이 벌어지고 있는지 이해해야합니다.

+1

세션은 다른 "도메인"간에 공유 될 수 없습니다. 보안상의 문제입니다. –

+0

그리고 어떻게 알 수 있습니까? 문서가 있습니까? 나는 그것을 움직이게했다!! –

+0

제가 아는 한, 세션은 파일에 저장되어 있으며 거대한 고유 한 폴더가 있습니다. 데이터는 일련 화되지만 모든 웹 사이트마다 다른 키로 암호화되지는 않습니다. –

답변

0

이것은 가능할 수 있지만 기본 구성에서 문서 루트를 키로 사용하여 세션 데이터를 암호화하는 것은 suhosin에 의해 금지됩니다. 이러한 이유로 서로 다른 도메인의 세션을이 방식으로 공유 할 수 없습니다.

관련 문제