0

我有一个在 Heroku 中运行的 Ruby on Rails 服务器,我一直在尝试添加 SSL 以与使用 Android 开发的应用程序客户端进行通信。

我按照 Heroku 网站上的说明创建了一个自签名证书,并按照Heroku 教程的建议添加了端点。一切似乎都很完美,我测试了证书并且它也有效。为了强制服务器重定向到 https 协议,我也添加了“rack-ssl-enforcer”gem。

问题是,当在标头/有效负载(REST 控制台或 curl)中使用没有证书的任何服务器路由时,我认为 ruby​​ 服务器应该拒绝请求,仅在请求具有有效证书时才允许。但是,它返回的值与项目中没有 SSL 协议时的值相同。

我还需要配置什么吗?为什么会这样?

4

2 回答 2

0

在 Rails > 3.2 你可以设置这个配置

config.force_ssl = true

无需额外的 Gem 或 Rack 中间件。

于 2013-05-07T07:59:26.300 回答
0

您是否按照此处所述添加了相关的中间件配置?

# config/environments/production.rb
require 'rack/ssl'
config.middleware.use Rack::SSL
于 2013-05-06T17:02:00.177 回答