谷歌Chrome强制HTTPS

use*_*568 7 https google-chrome http openstreetmap ruby-on-rails-3

我正在开发一个使用SSL连接的Rails应用程序.我目前正在使用js和css文件的第三方资源来实现地图(OpenStreetMap).我已经尝试将这些资源(js和css)导入到我的应用程序中,但javascript代码尝试通过HTTP访问外部WMS.

问题是,当应用程序使用HTTPS时,Google Chrome会阻止从HTTP访问第三方资源.

所以我在应用程序的某些页面上禁用了SSL,并试图按照我想要的方式强制使用HTTP或HTTPS.

关注此博客:http://www.simonecarletti.com/blog/2011/05/configuring-rails-3-https-ssl/,它的确有效.

但是当我强制使用谷歌浏览器将HTTP协议强制用于使用这些资源的页面时,它会强制HTTPS连接导致无限循环.

如果我清除Chrome缓存(已经使用HTTPS访问过同一页面),以便通过HTTP访问它,它就可以正常工作.但是,如果我访问了HTTPS页面并尝试通过HTTP访问,Chrome会强制HTTPS连接导致无限循环.

问题是:我可以在请求中设置导致Chrome接受连接的内容吗?

问候

小智 10

我一直在研究这个问题,事实证明,force_ssl = true启用Rails 3会导致应用程序发送HSTS标头.这里有一些关于它的信息:如何禁用HTTP严格传输安全性?

从本质上讲,HSTS标题告诉Chrome(和Firefox)只能通过HTTPS访问您的网站一段特定的时间.

所以...我现在给你的答案是你可以通过进入about:net-internalsChrome浏览器并删除HSTS状态来清除自己的HSTS设置.

我认为这里的答案可以帮助您:Rails:激活SSL支持让Chrome感到困惑