放置DNSlogging和子域名的最佳做法

说我有mydomain.com

使用选项A更好吗:

[A] mydomain.com 123.45.67.89 [A] www.mydomain.com 123.45.67.89 

或选项B:

 [A] mydomain.com 123.45.67.89 [CNAME] www.mydomain.com mydomain.com 

通过select一个接一个,实际上会有什么影响?

第二个问题是,我想在blog.mydomain.com上有子域名。 我把它设置为Alogging如下:

 [A] blog.mydomain.com 123.45.67.89 

为了使用户在inputwww.blog.mydomain.com时也可以访问,我还插入以下logging:

 [A] www.blog.mydomain.com 123.45.67.89 

问题是,这是常见的做法吗? 还是有更好的方法来做到这一点? 我想实现的是(用户访问 – >redirect到):

 mydomain.com -> mydomain.com www.mydomain.com -> mydomain.com blog.mydomain.com -> blog.mydomain.com www.blog.mydomain.com -> blog.mydomain.com other.mydomain.com -> error 

干杯!

    一般来说,为了便于维护,最好的做法是这样的:

     [A] mydomain.com 123.45.67.89 [CNAME] www.mydomain.com mydomain.com [CNAME] blog.mydomain.com mydomain.com [CNAME] www.blog.mydomain.com mydomain.com [A] mail.mydomain.com 123.45.67.89 [MX] mydomain.com mail.mydomain.com 

    这可以让您更改您的mydomain.com Alogging,而不会中断您的邮件logging或手动更改每个子域名。

    您还需要设置您的Web服务器来回答这些名称。 以下是Apache中的一个例子:

     NameVirtualHost 123.45.67.89:80 <VirtualHost 123.45.67.89:80> DocumentRoot /var/www/html/mydomain.com ServerName mydomain.com ServerAlias www.mydomain.com ErrorLog logs/mydomain.com-error_log CustomLog logs/mydomain.com-access_log combined </VirtualHost> <VirtualHost 123.45.67.89:80> DocumentRoot /var/www/html/blog.mydomain.com ServerName blog.mydomain.com ServerAlias www.blog.mydomain.com ErrorLog logs/blog.mydomain.com-error_log CustomLog logs/blog.mydomain.com-access_log common </VirtualHost> 

    对于您提到的redirect:

    问题是,这是常见的做法吗? 还是有更好的方法来做到这一点? 我想实现的是(用户访问 – >redirect到):

     mydomain.com -> mydomain.com www.mydomain.com -> mydomain.com blog.mydomain.com -> blog.mydomain.com www.blog.mydomain.com -> blog.mydomain.com other.mydomain.com -> error 

    要实际更改显示在客户端地址栏中的URL,需要在服务器端使用mod_rewrite完成,而不是DNS的function。

    选项B.使用CNAMElogging为现有Alogging指定别名。 这同样适用于博客和www.blog条目。 selectCNAMElogging可以让您更改一个位置的实际IP(Alogging)。 如果您将所有条目logging为Alogging,则需要分别更新每条logging。

    在第一个问题中,你可以做到这一点。 将CNAME作为CNAME的唯一真正的影响是,当查find这个名字时,在某些情况下,它会导致第二次DNS查找,以获取它指向的名称(所以现在我查找www.example.com并获取一个指向example.com的指针,并且必须去查看实际得到的IP)。 差别通常在毫秒量级,有时指针的IP将被包含在响应中,如果服务器知道它,避免第二次查找。 它仍然创build更大的DNS数据包。 我更喜欢将它们定义为Alogging,并使用CNAME作为我自己域之外的主机。

    至于第二个问题,你可以自己configuration它们,只要确保Web服务器会为它们回答问题,并根据需要提供适当的HTTP级redirect(请记住,DNS不会将浏览器的地址请求redirect到另一个URL) 。