如何包括SSL证书的Rails 3项目(How to include SSL Certificate

2019-08-16 17:35发布

我已经开发了一个Rails 3项目,该项目采用thin如服务器,以制定和看门的认证沿

我想补充的SSL证书在我的项目。 我已经看到了一些帖子,描述了如何在Rails 3的项目中使用SSL证书,但没有再展示如何添加在Rails 3的项目证书。

我已经启用config.force_ssl = true在我的applicationcontroller.rb ,我试图启动瘦服务器,如:

thin start --ssl

它的工作原理不添加证书,我现在可以访问我的网站https:// (从浏览器中获取证书未验证警告我希望这是因为我的证书不是由CA验证)。

最近,我已经看到了展示如何添加SSL证书在Rails 3的项目后, 我如何可以传递的Rails 3.0 SSL选项进入“轨服务器”?

:SSLEnable        => true,
:SSLVerifyClient    => OpenSSL::SSL::VERIFY_NONE,
:SSLPrivateKey        => OpenSSL::PKey::RSA.new(File.open(current_dir + "/config/certs/server.key").read),
:SSLCertificate         => OpenSSL::X509::Certificate.new(File.open(current_dir + "/config/certs/server.crt").read),
:SSLCertName    => [ [ "CN", WEBrick::Utils::getservername ] ]

这是将证书的正确方法吗? 每次当我尝试启动我需要指定这些选项的服务器。

是否有任何其他方法,包括证书路径在我的项目配置(或在自己的项目证书),因此没有必要指定每次我启动我的服务器时,每个证书路径?

任何帮助表示赞赏....

Answer 1:

在这里,我找到答案有关添加SSL薄:

薄带SSL支持和红宝石调试

如果你想添加SSL nginx的(以在生产中使用nginx的我的意见),在这里被描述如何添加证书nginx的

http://wiki.nginx.org/HttpSslModule

server {
  listen               443;
  ssl                  on;
  ssl_certificate      /path_to_certificate/cert.pem;
  ssl_certificate_key  /path_to_certificate/cert.key;
  keepalive_timeout    70;
}


文章来源: How to include SSL Certificate in Rails 3 project