【发布时间】:2016-06-10 18:31:57
【问题描述】:
我最近在 CentOS 7.x 上设置了几个 Ruby on Rails 服务器,使用 Thin 作为 Web 服务器和 Comodo 的 SSL 证书。
我在我的config/environments/production.rb 文件中启用了force_ssl 选项,并且我正在使用以下命令运行我的服务器:
RAILS_ENV=production thin start -a <IP> -p 3000 --ssl --ssl-key-file <KEY FILE PATH> --ssl-cert-file <CERT FILE PATH>
我正在使用设计,所以在config/initializers/devise.rb我设置
config.rememberable_options = { secure: true }
我还在config/initializers/session_store.rb中设置了一些配置
Rails.application.config.session_store :cookie_store, key: '_secure_<domain>_session', httponly: true, secure: true
当我第一次从 Internet 浏览器通过 HTTP 访问我的服务器时,我收到一条空响应消息(已使用多个浏览器和多台计算机进行测试)。当我直接通过 https 访问它时,它可以很好地解析(并且 SSL 工作得很好),当我下次尝试通过 http 访问它时,它会很好地重定向。我不确定如何使用 nginx 或 Apache 修复此栏。
这是我读过的其他问题:
【问题讨论】:
标签: ruby-on-rails ruby ssl