我在AWS EB中运行了一个基本的rails应用程序,并使用Amazon Certificate Manager提供了SSL层。你如何重新路由" example.com"到" https://www.example.com"自动?这样应用就会为应用访问运行SSL证书。 在此先感谢
答案 0 :(得分:0)
您需要将HTTPS重定向配置添加到rails应用的源代码中。有一种方法可以在弹性beanstalk中进行高级设置,使用名为.ebextensions的文件夹中的conf文件
http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/ebextensions.html
具体来说,您需要创建一个包含以下内容的conf文件,并将其添加到.ebextensions文件夹中。
Files:
"/etc/httpd/conf.d/ssl_rewrite.conf":
mode: "000644"
owner: root
group: root
content: |
RewriteEngine On
<If "-n '%{HTTP:X-Forwarded-Proto}' && %{HTTP:X-Forwarded-Proto} != 'https'">
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
</If>
有关详细信息,请参阅此AWS论坛链接。 https://forums.aws.amazon.com/message.jspa?messageID=739990
答案 1 :(得分:0)
将以下行添加到config/environments/production.rb
文件:
config.force_ssl = true # Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies.