내 웹 사이트에서 여러 하위 도메인을 갖고 싶습니다. 지정된 하위 도메인의 컨텍스트를 만드는 파일은 해당 하위 디렉토리에 저장됩니다.SESSION 변수를 상위 디렉토리의 페이지에 전달하는 방법은 무엇입니까?
때로는 하위 도메인에 속하지 않는 파일에 링크해야합니다.
예를 들어 내 "subdomain1.mysite.org"에는 "www.mysite.org/login.php"에 대한 링크가 있습니다. "login.php"는 하위 도메인에 해당하는 모든 하위 디렉토리를 포함하는 디렉토리에 저장됩니다.
"www.mysite.org/login.php"에 대한 링크를 다음과 같이 지정하면 href='../login.php'
으로 작동하지 않습니다. 브라우저가 "subdomain1.mysite.org/../login.php"에 액세스하려고하기 때문에. 이 문제를 해결하기 위해이 방법으로 링크를 만듭니다 : href='http://www.mysite.org/login.php'
하지만이 방법으로 새 세션에 내 세션 변수를 전달할 수 없다고 생각합니다 (그럴 수 있습니까?).
그래서 내 문제는 부모 디렉터리 또는 다른 도메인에있는 페이지에있는 페이지에 세션 변수를 전달하는 방법을 찾을 수 없다는 것입니다. 아무도이 문제를 어떻게 해결할 수 있는지 알고 있습니까? 권장
내가 피곤 문제를 해결하기 위해 session_set_cookie_params
를 사용하여,
을 추가했습니다. 그러나 나는 여전히 원하는 결과를 얻을 수 없다.
내가 다음 코드를 사용subdomain1.mysite.org
콘텐츠를 생성하는
index.php
파일이
: 나중에보다
session_set_cookie_params(24*60*60,'/','.mysite.org');
session_start();
$_SESSION['page'] = $PHP_SELF;
를 동일한 파일에 내가 중 하나에 대한 링크를 만드는 자세한 내용은에서 나는 다음을 수행 내 페이지 (나는 문제가 여기에있을 수 있다고 생각한다). "A"와 "B"사이에 아무것도
session_set_cookie_params(24*60*60,'/','.mysite.org');
session_start();
print "a".$_SESSION['page']."b";
결과로 : 나는 다음과 같은 코드를 가지고있는 login.php 파일에서
href='http://www.mysite.org/login.php'
: 나는 다음과 같은 방법으로 링크를 만들 수 있습니다. 그래서 한 페이지에서 다른 페이지로 세션 변수를 전달할 수 없습니다. 아무도 내가 뭘 잘못하고 있는지 알아?
session_set_cookie_params
전에 session_name("some_name");
:
내가 다음 줄을 추가하면 내 문제가 해결된다 '라고해야 2 을 추가했다.
쿠키를 사용하는 경우 제대로 작동하는 것 같습니다. http://stackoverflow.com/questions/644920/allow-php-sessions-to-carry-over-to-subdomains – GWW