如何使用停用Webrick的SSL

上周我尝试使用webbrick中激活的SSL进行调试,但我忘记了如何将设置恢复为默认设置(不使用SSL)。 每次我访问控制器时,现在它显示:

SSL连接错误无法与服务器建立安全连接。 这可能是服务器的问题,或者可能需要您没有的客户端身份validation证书。 错误107(net :: ERR_SSL_PROTOCOL_ERROR):SSL协议错误。

以下是来自控制台的日志,任何人都可以帮忙吗?

[2011-05-10 07:28:43] INFO WEBrick 1.3.1 [2011-05-10 07:28:43] INFO ruby​​ 1.8.7(2009-06-12)[universal-darwin10.0] [2011 -05-10 07:28:43] INFO WEBrick :: HTTPServer #start:pid = 62854 port = 3000 [2011-05-10 07:28:58] ERROR bad request-Line`UQM?x?’??? ???? C 17乙?????ñ??? ??? BU * ??? 98?5EDf32?A / ??”。

我今天遇到了同样的问题。 我将config.force_ssl = true添加到application.rb文件中并得到了上述错误。 当我删除该行时,错误仍然存​​在。

我通过清除我的浏览器cookie(在这种情况下为Chrome)修复它,然后再次运行。 似乎身份validation信息保存在cookie中,我不断将我们的请求恢复为HTTPS,但未正确validation,因此您得到了该错误。 清除cookie可以解决这个问题。

我有一个类似的问题,但无法通过清除Chrome上的cookie(也没有任何其他修复程序,如rake tmp:clear )来修复它,并最终切换到使用瘦启用SSL,如本文所述:

https://stackoverflow.com/a/11614213

将此添加到我的Gemfile中:

 group :development do gem "thin" end 

然后bundlethin start --ssl

我不得不使用rake tmp:sessions:clear (不仅仅是rake:tmp:clear )以及在浏览器中清除cookie来解决这个问题。

同样,我在config / locales / application.rb文件中添加config.force_ssl = true后收到了同样的错误

要修复SSL错误,只需在config / initializers / session_store.rb中编辑Rails.application.config.session_store :cookie_store, key: '_app_sessions'

'_app_sessions'名称更改为其他任何名称将允许您在没有ssl且没有错误的情况下启动rails服务器