【发布时间】:2018-11-20 03:21:30
【问题描述】:
目前,我正在开发一个 Wordpress 应用程序,并且正在使用 AWS 托管。我的域在 GoDaddy.com 中,我已经在弹性 beanstalk 中部署了应用程序。我已经创建了负载均衡器,还需要通过 HTTPS 运行应用程序。
我已经完成了我的研究,我认为我找到了正确的方法,但它不适用于 HTTPS。当我在端口 80 上浏览 HTTP 时,它运行良好。现在我很无奈。
这是我到目前为止所做的:
1) 我在 AWS Route 53 上为名为“example.com”的域创建了一个托管区域。有两条记录被创建,NS 和 SOA。
2) 然后,在 GoDaddy 中,我将来自 AWS 的 NS 记录添加为自定义名称服务器。
3) 之后,我在 AWS 托管区域中为域创建了一条记录,将 ALIAS 设置为针对 Elastic Beanstalk 环境的负载均衡器。
4) 然后,我将 wp_options 表中的站点 URL 更改为 wordpress 应用程序数据库。
完成此操作后,我的应用程序在 HTTP 中运行。但是因为我想将其更改为 HTTPS。所以,
1) 我向 AWS Certificate Manager 申请了证书,并在托管区域中创建了 CNAME(申请证书后由 ACM 提供)记录。
2) 颁发证书后,我从EC2 >> Load Balancer >> Listener 编辑了侦听器,并将协议从 HTTP 更改为 HTTPS,并且还允许安全组上的端口。
3) 另外,我更改了 WordPress 数据库中的站点 URL,并将其从“http://example.com”更改为“https://example.com”,但它不起作用。
4) 所以我去了Elastic Beanstalk >> Configuration >> Load Balancer 并添加了监听器。保存并重新启动环境后,站点仍然没有在 HTTPS 上运行 [显示 HTTP 408 错误]。但是,如果我将 SITE URL 更改为“http://example.com”,它会起作用
我找到了一个解决方案,它说使用 RedirectURL 并将其设置为服务器配置,但我不想这样做。
我还发现了这个solution,它建议导出区域文件并将其导入 AWS 托管区域。但是每当我单击导出区域文件(Unix)时,下载的文件显示为空。我为其他帐户尝试过这个,仍然存在这个问题。所以我没有那样做。
对不起,说得太长了,但我真的需要这个帮助。
【问题讨论】:
标签: wordpress amazon-web-services ssl amazon-ec2 amazon-elastic-beanstalk