2011-12-16 2 views
3

질문이 있습니다. 제가 웹 사이트에 있다고 가정 해 봅시다. domain1.com 그리고 domain1.com에 대한 링크를 클릭하면 domain2.com으로 연결됩니다. 하지만 session_start()으로 설정 한 session_id()domain1.comdomain2.com에 사용하고 싶습니다. PHP로 어떻게 이것을 할 수 있습니까?링크 클릭시 다른 웹 사이트에서 동일한 PHP 세션 사용

감사합니다.

+0

두 도메인을 모두 소유하고 계십니까? 그들은 동일한 서버에서 호스팅됩니까? –

+0

여기에서하고 싶은 것을 봅니다. 도메인 (HTTP_HOST)은 다르지만 서버는 동일합니다. 아니면 실제로 2 개의 별도 사이트가 있습니까? –

+0

두 사이트가 있습니다. domain2.com에서 domain1.com의 특정 정보에 액세스 할 수 있지만 완전히 다른 두 개의 웹 사이트입니다. 그들은 같은 서버에서 호스팅되지 않으며 예 나는 두 도메인을 소유하고 있습니다. – user765368

답변

0

session_id() 자체가 데이터를 포함 doen't으로, 몇 가지 고려해야 할이 있습니다 : 세션이 쿠키에 설정되어

  • 경우를 제외하고 하위 도메인을 (를 전송할 수 없습니다), GET을 통해 전송하십시오.
  • SESSION과 관련된 데이터를 서버에 동기화하려면 적어도 세션이 저장되는 경로에 대해 파일 시스템을 공유해야합니다 (예 : GlusterFS 통해) 예 :/tmp/php)
  • SESSION에 개체를 저장하는 경우 두 서버에서 개체를 사용할 수 있는지 확인하십시오

두 도메인 당신은 당신 만 session_id() 아니라 관련 데이터를 사용하려면 첫 번째 점

에 대해주의를 취할 필요가 동일한 서버에서 동일한 문서 루트를 가리키는 경우, 당신이 할 수있는 session_id('yourSessionIdFromDomain1')

0

어쩌면 당신은 당신이 두 사이트에서 액세스 할 수있는 MySQL 데이터베이스를 사용할 수 있습니다 ...

처럼 :

단지 ID를 설정

session_vars에서 사이트가로드 될 때마다 $_SESSION을 저장할 수 있습니다. access_token은 사용자가 웹 사이트를 처음 방문 할 때 생성되는 고유 한 문자열이어야합니다.

이것은 매우 위험합니다! 11 :-)

관련 문제