2011-10-09 2 views
1

URL이 http // somesite.com 인 환경에서 쿠키를 가져 오는 데 어려움을 겪고 있으며 요청이로드 균형 조정 응용 프로그램을 통해 전송되고 다양한 서버로 전달됩니다. 다음과 같이 PHP 스크립트에서 setcookie를 사용하여 쿠키를 설정할 수 있습니다. setcookie ("NameTest", $ cookieText, time() + 3600, "/"); 과 쿠키 somesite.com이 만들어졌습니다. 그러나 실행중인 시스템에서 해당 쿠키의 값을 다시 읽으려고하면 생성 된 쿠키를 찾지 못합니다. 이 일을해야하는 방법이 있어야한다는 것을 알고 있지만 사용할 수있는 것을 찾지 못했습니다. 아무도이 기능을 수행하는 방법을 말해 줄래? 모든 요청에> 서버 - 물론다중 서버 환경의 PHP 쿠키

이 일상

답변

1

쿠키 < 라운드 트립 클라이언트이다로드 균형 조정없이 단일 서버에서 완벽하게 작동합니다. 후속 요청에 쿠키가없는 경우 클라이언트가 쿠키를 보내지 않는 이유를 파악해야합니다. 로드 밸런서가 최종 사용자에게 투명하면 클라이언트가 요청을 처리하는 서버와 상관없이 클라이언트가 쿠키를 보내야합니다. 따라서 전송되지 않으면 처음부터 올바르게 설정되지 않은 것입니다.

1

예, 클라이언트가 외부에서 동일한 IP 및 도메인 주소를보고 있기 때문에 가능합니다. 그러나 세션 정보를 공유해야하는 경우 memcached 또는 mysql과 같은 것을 사용하여 노드간에 세션 데이터를 공유해야합니다.

+1

사용자가 매번 동일한 서버를 가져 오거나 연결하는 세션. – ceejayoz