ssl_requirementとrender_componentでstack level too deep
運用中のサイトにSSLを導入することになり、ssl_requirementを使ってみたらstack level too deepになってしまいました。
render_componentで読んだ先でもssl_requirementのbefore_filterがかかってしまうようで、http://にリダイレクトさせようとしているみたいです。しかもそのURLがrender_componentの呼び出し元なので、リダイレクトがループしてしまうようです。
ということで、render_componentで呼ばれたらSSLのチェック不要するようにしました。
--- vendor/plugins/ssl_requirement/lib/ssl_requirement.rb.orig 2010-06-08 11:36:06.000000000 +0900 +++ vendor/plugins/ssl_requirement/lib/ssl_requirement.rb 2010-06-08 11:35:52.000000000 +0900 @@ -47,7 +47,7 @@ private def ensure_proper_protocol - return true if ssl_allowed? + return true if ssl_allowed? || component_request? if ssl_required? && !request.ssl? redirect_to "https://" + request.host + request.request_uri
2010-06-08 11:37 diffが逆だったのを修正しました。