我正在使用HWI OAuth包允許用戶使用Google Apps登錄。它允許用戶按預期登錄。Symfony2 OAuth2登錄卡在無限重定向循環中
但是,大約5分鐘後,cookie過期並嘗試重定向到/ login,但它卡在無限重定向循環中。它試圖加載/登錄到端口443,但每次都返回302重定向到相同的URL。如果我清除服務器上的Symfony緩存或清除瀏覽器中的Cookie,它將顯示登錄頁面並重新運行。
// security.yml:
firewalls:
secured_area:
anonymous: ~
oauth:
resource_owners:
google: "/login/check-google"
oauth_user_provider:
service: my.security.userprovider
login_path: /login/
failure_path: /login/
form_login:
login_path: /login/
logout:
path: /logout
target: /login/
access_control:
- { path: ^/(_(profiler|wdt)|css|images|js)/, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/login, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/connect, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/, role: ROLE_STAFF, host: %cms% }
的網址是結構使得:在admin.example.com
- 一切都被固定
- 一切任何其他子域是公開的。子域是動態生成的。
nginx,Symfony2或FPM日誌中沒有任何內容。我已經將相同的代碼放在生產環境中的不同服務器上,並且發生同樣的事情。我無法弄清楚它是安全包,HWI OAuth包還是其中的一些東西。
所以,問題是哪種方法產生重定向,我該如何阻止它?
在'{path:^ /,role:ROLE_STAFF,host:%cms%}','%cms%'是什麼意思? – cheesemacfly 2013-05-08 15:00:13
@cheesemacfly它是'parameters.yml'中定義的一個參數,引用了admin.example.com的URL。 – 2013-05-08 16:28:28
所以當你陷入無限循環時,主機是否匹配這個參數呢? – cheesemacfly 2013-05-08 16:36:24