session_store.rb に次の構成があります
Fuel::Application.config.session_store :cookie_store,
:key => "_secure_session",
:secure => !(Rails.env.development? || Rails.env.test?),
:domain => :all
application_controller.rb 内
def default_url_options
return { :only_path => false, :port => 443, :protocol => 'https' }
end
私はdeviseを使用しており、私のrails3サーバーはHAProxyの背後で実行されています。HAProxy は HTTPS トラフィックを終了し、HTTP リクエストを Rails に渡します。私の問題は、session_store.rb で :secure => true をオンにすると、ユーザーが「Unauthorized」というメッセージとともにサインイン ページにリダイレクトされることです。私はそれをたくさんデバッグしようとしましたが、それを機能させる方法がわかりません。
HAProxy がすべての安全なトラフィックを終了させ、非安全なトラフィックをレールに渡すリバース プロキシである状況です。RailsがCookieをセキュアに設定すると、どういうわけかそれ自体がアクセスできなくなります。