1

我按照 指南在 EC2 上设置 WordPress,但它没有介绍如何启用 HTTPS。我使用了“Bitnami 和 Automattic 认证的 WordPress”AMI。

我知道我可以在 EC2 前面使用 CloudFront 进行 SSL,但我无法让它正常工作。我得到了错误 502 以及其他几个错误。所以我想从头开始并确认我的方法是正确的。

我已经注册了自己的域 (example.com)。在 Route 53 中,我将“blog.example.com”作为 A 记录指向我的实例的 EIP。我还有一条指向“blog.example.com”的“www.blog.example.com”的 CNAME 记录。两个 URL 都可以通过 HTTP 访问我的实例。

  1. 在 CloudFront 的配置中,我的“源域名”是:

    • 公共 DNS (ec2-XX-XX-XX-XX.ap-southeast-2.compute.amazonaws.com)
  2. “源协议策略”设置为 HTTP

  3. “查看器协议策略”设置为“将 HTTP 重定向到 HTTPS”。

  4. 对于 SSL 证书,我已经为两者申请了自定义证书:

    • 博客.example.com
    • www.blog.example.com

所有其他 CF 设置均保留为默认设置。我可以访问发行版的域名,但它仍然是 HTTP。

部署分发版后,我将 Route 53 中的“blog.example.com”记录更改为 CF 域名的别名目标 (xxxxxxxxxxx.cloudfront.net)。

  • CNAME 记录(www.blog.example.com)呢,是否也应该修改?

到目前为止,我可以同时访问“www.blog.example.com”和“blog.example.com”,但它的 HTTP 和 EIP 出现在 URL 栏中,而不是域名。

我缺少什么或设置不正确?

我是 AWS 的超级新手,提前非常感谢!

4

2 回答 2

0

您的 aws 配置看起来不错。问题在于您的 wordpress url,在 wp-config.php 中,您可以将 siteurl 识别为您的“domain.com”,或者您可以通过在数据库中手动输入“domain.com”来设置它。确保在 siteurl 字段中输入https://youdomain

于 2020-02-08T19:40:08.190 回答
0

我不确定您是否仍在寻找解决方案,但这是我在我的 ec2 实例上完成设置 SSL 的方法。

1) 我为 ec2 指向的 URL 颁发了 SSL 证书。我使用 AWS Certificate Manager 来完成此任务。

有两种方法可以验证域权限 DNS 和电子邮件。我发现 DNS 要容易得多,尤其是在您使用 Route 53 时。

2)接下来,我必须在 Cloudfront 中列出我的两条 A 记录(www.example.com 和 example.com)的备用 CNAME(教程很有帮助)。在 General 选项卡下选择 Cloudfront 发行版后,单击Edit按钮。您需要通过选择单选按钮导入您的 SSL 证书:Custom SSL Certificate (example.com)然后选择您在步骤 1 中创建的相应证书。

请记住,其中一些步骤需要 15-20 分钟才能传播更改。

3) 最后一步是将 Route 53 中的 A 记录指向 Cloudfront 分发域名。

完成此任务需要使用的三个 AWS 服务是 Route 53、Cloudfront (CDN) 和 Certificate Manager。

希望这会有所帮助,祝你好运!

于 2020-02-08T05:01:18.967 回答