2

所以我在生产中的应用程序完全崩溃了这个消息:

Filter chain halted as #<Proc:0x007f766547ea18@/app/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_controller/metal/force_ssl.rb:65> rendered or redirected 

我在网上做了一些研究,到目前为止,当端口丢失时,这似乎主要发生在本地开发模式下。但我不确定为什么在我的 Heroku 应用程序中会发生这种情况......对于上下文,代码没有改变,截至 30 分钟前它工作正常。我正在使用 CloudFlare,但我检查了裸机your-app-name.herokuapp.com也因相同的错误而损坏。

任何帮助表示赞赏!

4

1 回答 1

1

我在 rails 4.0 的开发环境中遇到了同样的错误(因为控制器上有 force_ssl)。

我使用支持 ssl 的瘦 Web 服务器解决了这个问题,如下所示:

  1. 将瘦宝石添加到我Gemfile的开发组:
    group :development do
      gem 'thin'
    end
  1. 在您的终端上运行 bundle install :

    bundle install

  2. 从终端上的 ssl 支持开始精简:

    bundle exec thin start --ssl

  3. 在您的网络浏览器上通过 https访问该页面:

    协议需要以 https 开头,否则会得到空响应。( ERR_EMPTY_RESPONSE )

    https://localhost:3000/

    如果您的连接被拒绝(ERR_CONNECTION_REFUSED),您需要在服务器参数上定义环回 IP 地址:

    bundle exec thin start --ssl -a 127.0.0.1

  4. 你会得到一个隐私错误,只需点击AdvancedGo to localhost (not safe)

抱歉,我的图片在 pt-br 中: 在此处输入图像描述

  1. 完成!在开发模式下,您将在 localhost 上获得自签名 https 连接;)
于 2016-05-24T17:43:19.673 回答