2012-03-30 8 views
3

Ich verwende Devise, um die Authentifizierung in einer Rails 3.1-Anwendung zu verwalten. Es funktioniert gut in meinem Produktionsserver. Aber ich habe gerade einen neuen Testserver eingerichtet, und wenn ich mich bei der Hauptwebsite anmelde, erkennt der Zugriff auf eine Subdomäne die Sitzung nicht. Ich werde gebeten, mich erneut anzumelden.Von Devise verwaltete Sitzung, die nicht an Subdomänen weitergegeben wird

Ich kann mich nicht erinnern, wo ich diese Informationen beheben würde. Es scheint, als ob es eine Cookie-Einstellung ist.

Ich habe Domains auf jede Website, Produktion und Test hingewiesen. Die Produktion endet mit .net, die Testversion endet mit .co.

Kann mir jemand in die richtige Richtung zeigen?

Antwort

4

Ich denke, das ist keine Geräteeinstellung, sondern eine Sitzung und Cookie-Einstellung.

Sie können durch Setzen der Variable YourApp::Application.config.session

daran arbeiten Sie können dies oder Ihre config/initializers/session_store.rb in Ihrer environment.rb Datei tun. Beispiel für session_store.rb ist

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' 
} 

Bitte beachten Sie die session_domain es .yourdomain.com Einstellung macht Ihre Cookies über Sub-Domains arbeiten.

Dies gilt für Sitzungen. Es gibt ähnliche Einstellungen für Cookies.

Verwandte Themen