Sim*_*ton 5 ssl facebook ruby-on-rails facebook-graph-api
随着即将于10月1日在Facebook上进行SSL迁移,所有应用都必须支持通过HTTPS进行连接,因此您需要SSL证书.
是否有关于如何修补应用程序的详细说明?
并不真地。为什么?因为这完全取决于您运行的 Rails 版本。
对于 Rails 2.x,我读过/听说过的技术包括:
对于 Rails 3.1,它被支持到框架中。你只需要这样做:
# config/application.rb
module MyApp
class Application < Rails::Application
config.force_ssl = true
end
end
Run Code Online (Sandbox Code Playgroud)
您必须使用 Apache 和 Passenger 吗?
不必要。还有其他选项,例如 NGinx 和 Passenger。但总的来说,您可能需要一个合适的 Web 服务器放在前面,处理请求的 SSL 部分。
通常,您的应用程序之前需要有一个 Web 服务器。它需要配置为处理 SSL 流量,并将请求定向到您的应用程序(http 和 https)。这里你可以使用 Apache 或 NGinx。
Passenger 作为 Apache/NGinx 中的“插件”来处理对应用程序的请求。此时,SSL 通常不是问题(即请求现在未加密)。然后您的应用程序必须做的是处理请求。您可以在此处检测协议是 http 还是 https,并指示浏览器在必要时进行重定向。
有免费的可信证书吗?
不会。受信任的证书通常由证书颁发机构签名。这些人通常必须检查您的域名以及持有该域名的公司或个人是否真实。为此,您需要付费。有很多提供商可以向您颁发 SSL 证书,价格约为 100 美元。有的多一些,有的少一些。
证书通常锁定到某个域。并且您为通配符域匹配支付更多费用(例如 *.myapp.com)。如果您需要开发证书,则可以生成自签名证书。
我写了一篇文章,向您展示如何在本地开发实例上使用 HTTPS。许多步骤对于生产也是常见的。本文向您展示了如何为 POW 和 NGinx 进行设置,但为 Apache 和 Passenger 进行设置并没有太大不同。Apache 配置不同。但 Passenger 安装和设置应该与 http 环境相同。只需确保 Apache 配置中的安全虚拟主机指向您的应用程序。