Heroku上的Rails应用程序:HTTP和HTTPS无法与Firefox客户端同时运行

时间:2014-07-14 22:54:47

标签: ruby-on-rails firefox ssl heroku https

我有一个Rails 4.0电子商务应用程序,它在结帐页面上强制执行HTTPS,同时在其他页面上强制执行HTTP(由于第三方HTTPS库不可用)。我在自定义域上的Heroku雪松堆栈上进行部署,在使用Firefox访问HTTPS页面之后,所有未来的HTTP请求都会转换为HTTPS。

因此,应用程序陷入了无限循环的重定向(我的应用程序检测到HTTPS请求并重定向到HTTP,并且firefox继续发回HTTPS请求)。我不会在其他浏览器中遇到此问题 - Chrome和Safari。

在线搜索我发现 - - 这是一个Firefox' bug。如果浏览器历史记录包含与域的HTTPS通信,则它会对将来的所有请求强制执行HTTPS。 - 一个可能的解决方案是配置.htaccess文件,但我不确定如何在Heroku上执行此操作,以及这是否适用于Nginx或者仅适用于Apache。解决方案详细信息在此处为https://support.mozilla.org/en-US/questions/933563

这个问题有解决方法吗?任何帮助将不胜感激。

要从HTTPS重定向到HTTP,我在Controller中有一个before_filter: * before_filter   if request.protocol ==" https://"     redirect_to:protocol => ' http://',:status => :moved_permanently   结束 结束 *

要在结帐页面强制使用HTTPS,我使用: * force_ssl *

0 个答案:

没有答案