2012-03-30 3 views
3

Devises를 사용하여 Rails 3.1 애플리케이션에서 인증을 관리하고 있습니다. 그것은 내 생산 서버에서 잘 작동합니다. 그러나 새로운 테스트 서버를 설치하기 만하면 기본 사이트에 로그인하면 하위 도메인에 액세스하여 세션을 인식하지 못합니다. 다시 로그인하라고 요구하고 있습니다.Devise 관리 세션이 하위 도메인에 전파되지 않음

이 정보의 문제를 해결할 수 없습니다. 마치 쿠키 설정 인 것 같습니다.

나는 각 사이트, 생산 및 테스트를 가리키는 도메인을 가지고 있습니다. 프로덕션 하나가 .net으로 끝나고 테스트 버전은 .co로 끝납니다.

누구나 올바른 방향으로 나를 가리킬 수 있습니까?

답변

4

이것은 생각 나는 설정이 아니라 세션 및 쿠키 설정이라고 생각합니다.

당신은 당신의 environment.rb 파일 또는 config/initializers/session_store.rb에서 변수 YourApp::Application.config.session

당신은이 작업을 수행 할 수 있습니다를 설정하여이 작업을 할 수 있습니다. session_store.rb에 대한 예

YourApp::Application.config.session = { 
:session_domain => '.yourdomain.com', 
:session_key => '_yourapp', 
:expire_after => 14*24*3600, 
#:secure => true, #for secure/ssl sessions and such 
:secret  => 'somesecretgobledygook' 
} 

이 쿠키는 하위 도메인에서 작동하게 .yourdomain.com로 설정 session_domain을 유의하시기 바랍니다 것입니다.

이것은 세션에 적용됩니다. 비슷한 쿠키 설정이 있습니다.

관련 문제