2013-10-18 3 views
0

sfGuardUser 플러그인과 함께 symfony 1.4.20을 사용하고 있습니다. 동일한 앱을 공유하는 여러 하위 도메인이 있습니다.Symfony sfGuardUser 여러 하위 도메인에서 단일 인증

앱의 한 모듈은 사용자가 로그인했는지 여부에 따라 약간 다른 콘텐츠를 제공해야합니다. 이 모듈은 하위 도메인 (예 : sub.domain.com)을 통해 액세스해야합니다. domain.com을 통해이 모듈에 액세스하면 바로 작동합니다. sub.domain.com을 통해 모듈에 액세스하면 해당 사용자도 로그인 한 것으로 간주됩니다. .domain.com에 매개 변수 :

내 생각 엔이 sfguad 플러그인에 의해 사용되는 인증 쿠키있는 도메인이 없습니다. 어떻게 바꿀 수 있습니까? 이 스레드 3207099은 가능한 것으로 나타납니다.

감사합니다.

+0

당신은 쿠키, 예를 들어, 대부분의 브라우저를 사용하여 작동합니다 하위 도메인 것을 확인할 수 있습니다 Firefox의 쿠키 창 먼저 확인해? – halfer

+0

호스트가 있습니다 : www.domain.com 및 경로 : '/'하지만 도메인 매개 변수가 없습니다. – flm

답변

1

해결책을 찾았습니다. 같은/응용 프로그램 /을 my_app/설정 아래 factories.yml 파일에 session_cookie_domain 매개 변수를 추가

storage: 
    class: sfSessionStorage 
    param: 
     session_name: symfony 
     session_cookie_domain: '.domain.localhost' 

을 내가 가지고 혼란

  • 나는이가에서 사용되는 인증 쿠키와 관련된 것을 먼저 생각했기 때문에 sfGuard 플러그인이지만 세션 쿠키의 도메인을 구성하는 것은 내가 원하는 것을 달성하기에 충분합니다. . 왜 누군가가 설명 할 수 있을까요?
  • 로컬 테스트에 한 단어 전용 도메인 을 사용하고 설정 '.domain'이 쿠키의 도메인으로 끝나지 않습니다. 보이는 것처럼 적어도 도메인 및 '.domain.localhost'와 같은 tld 있어야합니다.