如何在AWS Route 53中将非www domain.com重定向到www domain.com(WordPress博客)?

时间:2015-11-20 08:48:16

标签: amazon-web-services amazon-ec2 url-rewriting url-redirection amazon-route53

我的非www domain.com与GoDaddy一起,我的WordPress博客托管在AWS EC2中。我使用Route 53来处理DNS请求。在许多地方(包括SOF)看到的我的问题的现有解决方案是以非www域和www域的名义创建两个S3桶用于重定向静态网站。这不是我的情况。

我在EC2中安装了我的WordPress,而没有使用S3来保存我的数据。我希望这不是一个静态的网站,不能遵循可用的一般解决方案。

我尝试了以下解决方案并且无法正常工作

  • 我尝试将C-NAME记录更改为www.domain.com,但没有效果。

  • 我尝试了GoDaddy.com提供的域名转发功能,但没有工作。

  • 我尝试修改.htaccess文件,但这也没有用。

这就是我在Route 53中设置的记录看起来像

Name          Type     Value                         TTL
------        -----    -----                         ----
domain.com.    A      xx.xx.xxx.xxx  (EIP)           300
domain.com.    MX     1 ASPMX.L.GOOGLE.COM           3600
                      5 ALT1.ASPMX.L.GOOGLE.COM 
                      5 ALT2.ASPMX.L.GOOGLE.COM 
                      10 ALT3.ASPMX.L.GOOGLE.COM 
                      10 ALT4.ASPMX.L.GOOGLE.COM    
domain.com.    NS     ns-27.awsdns-03.com.           172800
                      ns-1190.awsdns-20.org. 
                      ns-2028.awsdns-61.co.uk. 
                      ns-855.awsdns-42.net.     
domain.com.    SOA    xxxxxxxxx                      900

如何将domain.com重定向到www.domain.com?

1 个答案:

答案 0 :(得分:2)

我对发表评论作为答案犹豫不决,因为似乎有很多方法可以设置和配置Wordpress。无论如何,为了保持在 amazon-web-services 标签中保留这个问题的精神,我运行了一个从AWS Wordpress Cloudformation模板部署的测试用例。我不确定这是否是您实际安装Wordpress的方式,但这是 一种 重定向方式:

enter image description here

确保您的Cloudformation模板成功完成。

enter image description here

这是我的托管区域的样子 - 我还没有添加A记录。

enter image description here

获取实例IP地址。请注意,在此示例中,我没有设置弹性IP。因为我知道我不需要暂时停止该实例,所以我选择坚持使用自动分配的随机公共IP。

enter image description here

接下来,我为该IP的域顶点创建了A记录,然后为www创建了A记录。我也将TTL改为60秒。

enter image description here

DNS传播完成后,我尝试访问我的域名。如您所见,AWS Cloudformation Wordpress安装默认使用不同的路径和URL。

enter image description here

使用网址http://example.com/wordpress就可以了。

enter image description here

我没有完成这些步骤,但是当你转到http://example.com/wordpress时,它会启动设置屏幕。输入数据库名称和密码等所有信息,然后登录管理面板。完成所有操作后,您将进入常规设置屏幕。这是您的配置可能会有所不同的地方,但对于我的配置,这些网址列为http://example.com/wordpress。我只是将这些网址更改为http://www.example.com/wordpress。 (顺便说一句,我也尝试更改并保存固定链接部分以生成.htaccess文件但由于无法写入文件而未生成一个文件。我尝试自己制作但我仍然遇到#34;许多重定向"消息,因此根据您的安装,这可能不是您想要的路线。)

enter image description here

您需要在index.php文件中进行更改。对于我的安装,它位于/var/www/html/wordpress/index.php。确保在更改之前制作副本。我只是在wp-blog-header.php前添加/ wordpress /。同样,此安装将Wordpress文件放在目录/ wordpress中 - 您的安装可能会有所不同。

enter image description here

接下来,您需要将修改后的index.php文件复制到/ var / www / html /,然后重新启动httpd服务。

enter image description here

为了测试更改,我清除了DNS缓存,并在Chrome中打开了开发人员工具的网络部分。

enter image description here

然后我打开了一个新标签(必须再次打开开发人员工具),然后键入裸域名。

Developer tools result

如您所见,该网址已重定向到www.example.com,并带有301永久重定向。

enter image description here

当我在这里时,我会通过另一个建议。您可以使用Cloudflare的免费版本为您进行重定向。 Cloudflare提供了许多其他免费且有用的服务,如CDN,所以如果你不介意依赖第三方服务(顺便说一句信誉良好的服务),那么增加价值可能会更容易。正如我在屏幕截图中强调的那样,请注意,如果您使用转发,则无法使用其他一些高级规则集。

Cloudflare redirect screen example

无论如何,我希望这有帮助!