Route 53 中的 www DNS 解析问题

Route 53 中的 www DNS 解析问题

我是一名新系统管理员,试图建立一系列网站,将非 www 版本的 URL 重写为 www 版本。我知道这是一个已经被讨论过很久的话题,但我搜索了整个互联网,却找不到任何答案。

因此:我的网站应该位于 www.example.com。我尝试在 Amazon 的 Route 53 中为 www.example.com 设置 DNS 作为我的顶级域,以及为 www 变体设置带有 CNAME 别名的 example.com。

我可以让我的网站毫无问题地响应裸域,并通过上面的 CNAME 别名将 www 版本别名为非 www。但是,我无法让 DNS 解析 www 版本。目前,名称服务器指向 www DNS 记录。

我可以断定我的服务器受到了影响,因为刷新裸域会正确重写 URL 并显示在访问日志中。但是,DNS 无法解析 www 变体。

再次,如果我将所有内容都切换到非 www 版本,则我可以毫无问题地为网站提供服务,并从 www 重定向到非 www。只是让 www DNS 解析让我抓狂。

以下是我的 Apache 虚拟主机配置。

<VirtualHost *:80>
  ServerName www.example.com
  ServerAlias example.tbid.promocampaigns.com
  ServerAlias example.com
  ServerAdmin [email protected]
  DocumentRoot /var/www/public_html/example.tbid.promocampaigns.com/
  CustomLog /var/log/httpd/example.tbid.promocampaigns.com-access_log combined
  TransferLog /var/log/httpd/example.tbid.promocampaigns.com-transfer_log
  ErrorLog /var/log/httpd/example.tbid.promocampaigns.com-error_log
      <Directory /var/www/public_html/example.tbid.promocampaigns.com/>
        allowoverride all
        order allow,deny
        allow from all
        options +includes
        rewriteengine on
    </Directory>
    RewriteEngine On
    RewriteCond %{HTTP_HOST}   !^www\.example\.com [NC]
    RewriteCond %{HTTP_HOST}   !^$
    RewriteRule ^/(.*)         http://www.example.com/$1 [L,R]
</VirtualHost>

我的 DNS 在 Route 53 中

www.example.com.
NS
<some name servers that I have directed Namecheap to use for domain name example.com>

www.example.com.
SOA
<first name server>

www.example.com.
A
<alias to load balancer>

这肯定是我遗漏了某些非常简单的东西 - 有人能帮助我吗?

答案1

简单来说,“www.example.com” 不是合适的顶点。只有“example.com” 才是。

在 Route 53 中为 example.com 创建托管区域。

使用新服务器为新的托管区域设置您的注册商。

创建两个 A 记录,一个主机名为空,另一个主机名为“www”,并将它们都设置为指向 ELB 的别名。

你完成了。

听起来您实际所做的就是为“www.example.com”和“example.com.www.example.com”创建 DNS 记录...

相关内容