Rails应用程序托管在heroku上,并使用乘客5作为服务器。
SSL需要作为通配符用于主域,但不适用于任何其他用户自定义域。为此,我们选择了ruby gem rack-ssl-enforcer(https://github.com/tobmatth/rack-ssl-enforcer)。
我已将以下内容发送到production.rb
config.middleware.insert_before ActionDispatch::Static, Rack::SslEnforcer, strict: true, only_hosts: /$\.mydomain\.com$/, only_environments: 'production', redirect_code: 302
with strict:true然而所有网址都以重定向循环结束。这被视为与nginx / passenger相关的问题,可以通过
解决在应用程序SSL配置的位置栏中,包括以下代理标头配置:
proxy_set_header X-Forwarded-Proto https;
如何在Heroku Rails应用程序中设置此单个配置选项?