gpt4 book ai didi

ruby-on-rails - 为在欧盟地区运行的 Heroku 应用程序强制使用 SSL

转载 作者:太空宇宙 更新时间:2023-11-03 12:41:07 24 4
gpt4 key购买 nike

我正在努力为在 Heroku(欧盟地区)上运行的 Rails 应用程序强制执行 SSL 连接。

我已成功将证书(包括 Heroku SSL 附加组件)添加到自定义域(如果我明确声明 https://..com,它会完美运行)

但我想将所有 http 请求重定向到 https 连接。

对于美国地区的应用程序,这需要将自定义域 DNS 记录指向 .herokussl.com 而不是 .herokuapp.com。文档:https://devcenter.heroku.com/articles/ssl-endpoint#dns-and-domain-configuration

对于欧盟地区的应用程序,自定义 DNS 记录仍应指向 .herokuapp.com,默认情况下似乎不会强制执行 SSL 连接。

因此,我的问题是:如何强制所有与在欧洲运行的 Heroku 应用程序的连接都通过 SSL 运行?

最佳答案

生产.rb

Rails.application.configure do
config.force_ssl = true
end

这会将所有 http 流量重定向到 https

编辑:值得注意的是这是 Rails 的东西而不是 heroku 的东西。

修订:

由于这个答案/问题经常被看到和投票,它也可以在 Controller 中基于每个请求:

class AccountsController < ApplicationController
force_ssl if: :ssl_configured?

def ssl_configured?
!Rails.env.development?
end
end

关于ruby-on-rails - 为在欧盟地区运行的 Heroku 应用程序强制使用 SSL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27377386/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com