如何使用amazon lightsail + s3重定向+路由53强制HTTPS

时间:2018-01-14 13:48:25

标签: apache ssl-certificate url-redirection amazon-route53 amazon-lightsail

我用Amazon Lightsail创建了一个wordpress博客,并在53号路线上买了几个域名。我的主要域名是example.com,我还买了:

  • example.eu
  • example.be

我正在使用s3存储桶将每个可能的组合(使用非www和www)重定向到www.example.com(在53号路由的托管区域中,www.example.com重定向到我的lightail static IP)。

我已经为www.example.com安装了Lets Encrypt SSL证书

现在我想强制使用HTTPS,以便所有请求都重定向到https://www.example.com(使用301重定向),我可以使用我的s3存储桶进行重定向,但我无法重定向www.example.com至https://www.example.com,因为它与我的静态IP地址相关联。

如何才能通过HTTPS访问我的博客?我在网上搜索了很长时间,并发现一些教程说我应该使用cloudfront来处理重定向到HTTPS,但它们从未真正适用于我的情况。

1 个答案:

答案 0 :(得分:2)

所以我终于想通了这个post。我修改了httpd-app.conf文件以添加SSL重定向规则:

RewriteEngine On
RewriteBase /

#SSL redirection
RewriteCond %{HTTPS} !on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

# Rewrite index.php
RewriteRule ^index\.php$ - [S=1]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

此规则允许使用我在服务器上安装的SSL证书(对于域www.example.com)将所有HTTP调用重定向到HTTPS。