AWS中的GoDaddy域,带有SSL for Wordpress应用程序问题

时间:2018-06-10 21:23:47

标签: wordpress amazon-web-services ssl amazon-ec2 elastic-beanstalk

目前,我正在使用Wordpress应用程序,而我正在使用AWS托管。我的域名在GoDaddy.com,我已经在弹性beanstalk中部署了该应用程序。我创建了负载均衡器,还需要通过HTTPS运行应用程序。 我已经完成了我的研究,我认为我找到了正确的方法,但它不适用于HTTPS。当我在端口80上浏览HTTP时,它运行良好。现在我很无奈。

这是我到目前为止所做的:
1)我在AWS Route 53上为名为“example.com”的域创建了一个托管区域。创建了两条记录,NS和SOA 2)然后,在GoDaddy中,我从AWS添加了NS记录作为自定义名称服务器。
3)之后,我在AWS托管区域中为域创建了A记录,将ALIAS设置为Elastic Beanstalk环境的Load Balancer。
4)然后,我从wordppress应用程序数据库的wp_options表中更改了站点URL。

完成此操作后,我的应用程序在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 ERROR IS SHOWN]。但是,如果我将站点网址更改为“http://example.com”,则可以使用

我找到了一个解决方案,它说使用RedirectURL并将其设置为服务器配置,但我不想这样做。

我还发现这个solution建议导出区域文件并将其导入AWS托管区域。但每当我单击导出区域文件(Unix)时,下载的文件显示为空。我试过这个用于其他帐户,仍然存在这个问题。所以我没有这样做。

很抱歉,但我真的需要这个帮助。

1 个答案:

答案 0 :(得分:0)

我已经解决了这个问题。

在我的负载均衡器端口配置中,我之前设置了负载均衡器端口443和实例443.这里我需要做的是在端口443上调用负载均衡器,后端在端口80上进行后端调用并在WordPress上启用https

所以我保持负载均衡器端口443并将实例端口更改为80.之后,在浏览器上显示too many redirects错误。那么我需要做的是在wp-config上添加$_SERVER['HTTPS'] = 'on'。然后一切都顺利进行。

enter image description here

我希望这会有所帮助