사이트 내 전체검색
PHP
다른 도메인간의 세션 공유 방법. [출처] 다른 도메인간의 세션 공유 방법.|작성자 나이스큐
로빈아빠
https://cmd.kr/php/793 URL이 복사되었습니다.

본문

브금이 넘 맘에들어 쓸거도 없는데 포스팅하는거라 내용이 구려도 이해바람 ㅋㅋㅋ


메인 도메인이 같은 경우.


php.ini 를 열어보면 여러 옵션중에


session.save_handler

session.save_path

session.cookie_domain


이렇게 옵션을 찾을 수 있다.


세션 핸들러와 저장 경로를 일치시켜주면 된다.

만약 서버가 물리머신 1대로 구성되고 단지 버츄얼호스트로 나뉘어 있고 세션이 파일로 저장되어있는경우 도메인이 babo.com이다.


session.save_handler = files

session.save_path = /sess_files  ; 임의로 지정

session.cookie_domain = .babo.com


이렇게하믄 game.babo.com, blog.babo.com 과같이 서브 도메인들의 세션정보는 공유가 됩니다.


만약 물리서버가 여러대로 나뉘어 있고 세션을 memcached에 쓰고 있다면


session.save_handler = memcached

session.save_path = 192.168.0.124:11211 ; <= memcached 서버 아이피,포트

session.cookie_domain = .babo.com 


이렇게 설정가능..


이건 해보지 않았지만 될껄.


adultgame.babo.com만 다른 세션을 쓰고 싶다면...

session.save_path 에 다른 맴캐쉬서버를 지정해주면됨. 


아주간단


완전히 다른 도메인끼리 세션을 공유해야되는경우는


간단히 http session server란 솔루션을 쓰던가 아니면

개노가다로 구현해줘야됨. 

phpschool에 가서 '타도메인간 세션공유' 치면 몇개나옴.


감사 (__);


이방법은 서버상의 모든 도메인의 세션을 같이 공유하게 되어버리는 문제가있다.


그래서...


session_start(); 이전에


session_set_cookie_param( 0, '/', 'nicecue.com' );

session_start();

이런식으로 해주면 nicecue.com을 1차 도메인으로 하는 모든 커넥션은 세션을 공유하게된다.

init_set 함수로도 설정을 할 수있지만, QA 서버에서는 제대로 동작하지 않았다.

댓글목록

등록된 댓글이 없습니다.

PHP
871 (4/18P)

Search

Copyright © Cmd 명령어 18.221.238.204