繁体   English   中英

HTTPS 在 Ruby on rails 中的实施

[英]HTTPS implementation in Ruby on rails

我试图在子域上实现 https。 我已经包含了 SSL_requriment插件

我的申请 controller 有两个声明:

  include SslRequirement
  ssl_required if ENV["RAILS_ENV"] == "production"

我已经生成了密钥、csr 和 crt,并在 apache 配置文件中指定了它:

    <VirtualHost *:80>
    ServerName app.my_app.com
    DocumentRoot /home/me/my_app/production/current/public
    </VirtualHost>
    <VirtualHost *:443>
    ServerName app.my_app.com
    DocumentRoot /home/me/my_app/production/current/public
    SSLEngine on
    SSLCertificateFile /home/me/my_app/production/shared/plusrev.crt
    SSLCertificateKeyFile /home/me/my_app/production/shared/plusrev.key
    </VirtualHost>

我的子域仍然没有重定向到 https。我缺少的任何东西。

没有传递给 ssl_required 的操作。 但是我想你想添加

def ssl_required?
  true
end

到您的 controller,因此默认情况下所有操作都需要 https。

插件 API 并不明显,因此请查看代码。

这是解决方案。

采用

 gem 'grosser-ssl_requirement', :require => 'ssl_requirement'

在你的 gemFile. 这是宝石指南

在您的申请 controller 中:

 include SslRequirement
 ssl_required :all if ENV["RAILS_ENV"] == "production"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM