我的 Rails 应用程序有两个域名:app.example.com、short.net。较长的域是标准域,需要 HTTPS,较短的域是提供短 URL 的便利域,需要 HTTP。
目前我强制使用 SSL:
config.force_ssl = true
但我真的只想为较长的域名强制使用 SSL。如何根据域名有条件地强制使用 SSL?短域名将重定向到主域名,然后强制使用 SSL。这将避免短域名需要 SSL 证书。
想法?
最佳答案
向您的 ApplicationController
添加一些配置:
class ApplicationController < ActionController::Base
force_ssl if: :ssl_required?
[...]
private
def ssl_required?
request.host == 'app.example.com'
end
end
来源:http://api.rubyonrails.org/classes/ActionController/ForceSSL/ClassMethods.html
关于ruby-on-rails - 如何根据域名有条件地强制使用 SSL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22391548/