【问题标题】:Domain IP address for www and non-www for Canonical URLwww 的域 IP 地址和规范 URL 的非 www 的域 IP 地址
【发布时间】:2013-11-03 05:09:33
【问题描述】:

要处理规范 URL,最佳做法是执行 301 重定向还是更好地为 www 和非 www 域使用相同的 IP 地址?

例如:

想要的规范 URL/域是 http://example.com

Domain           | A Record
------------------------------------
example.com      | 192.0.2.34
www.example.com  | 192.0.2.34

我知道人们可能有 www 的 CNAME 记录(别名,因为 CNAME 被称为规范名称);不确定这是否是与使用相同 IP 地址相比的最佳做法。

或者这样更好。

Domain           | A Record
------------------------------------
example.com     | 192.0.2.34
*  www.example.com 301 redirect to example.com

【问题讨论】:

    标签: dns seo subdomain


    【解决方案1】:

    您描述的机制(ACNAME 记录与 301 重定向)是两种不同协议(DNS 和 HTTP)的一部分。 ACNAME 记录与您的 HTTP 服务器为不同请求服务的站点无关。

    让我们看看两种不同的 DNS 配置:

    配置 1(CNAME 记录)

    Host             | Type  | Data
    -----------------+-------+-------------
    example.com      | A     | 192.0.2.34
    www.example.com  | CNAME | example.com
    
    • nslookup example.com 解析为 192.0.2.34
    • nslookup www.example.com 解析为 192.0.2.34

    配置 2(A 记录)

    Host             | Type  | Data
    -----------------+-------+-------------
    example.com      | A     | 192.0.2.34
    www.example.com  | A     | 192.0.2.34
    
    • nslookup example.com 解析为 192.0.2.34
    • nslookup www.example.com 解析为 192.0.2.34

    在这两种情况下,您的规范域和 www 子域都解析为 192.0.2.34。但是,您的 HTTP 服务器唯一能识别的是它在同一 IP 地址上同时接收到 example.comwww.example.com 的请求。但它不知道你使用的是A 还是CNAME 记录。

    TL;DR

    您必须使用 HTTP 301 重定向来强制 HTTP 请求中的规范 example.com。但这与您的 DNS 配置无关。

    【讨论】:

    • 感谢您的详细解释。 HTTP 重定向或将完成重定向的服务器的 A 记录将解决规范的 url 问题。你是一个善良的人,我很感激你的时间。
    • 很好的解释。但我有一个问题。如何强制使用 www 而不是规范?对于我的一个域,即使我访问 www,它也只服务于规范域。它重定向到规范网址。有什么想法吗?
    • @SD 重定向是由您的网络服务器引起的。检查您的网络服务器配置是否有任何从 www 域到您的规范域的重定向,如果您不希望这样做,请删除它们。
    • @PoByBolek 你的意思是我应该检查 apache 配置吗?
    • @SD 是的,当然
    【解决方案2】:

    你可以试试redirect.center。它仅使用 DNS 重定向域。
    因此它将满足您的 DNS 配置:

    Domain           | A Record
    ------------------------------------
    example.com      | 192.0.2.34
    *  www.example.com 301 redirect to example.com
    

    将您的 DNS 记录设置为:

    CNAME |万维网 | example.com.opts-https.redirect.center

    注意:
    .opts-https. 参数重定向到 https
    如果您只使用http 域,请使用.opts-uri.

    【讨论】:

    • 这是我一生都在寻找的解决方案 :) 谢谢!!
    【解决方案3】:

    在 DNS 中,规范名称记录指向“一个真正的 DNS 条目”。最终结果是 DNSName1 与 DNSName2 具有相同的 IP 地址。

    CNAME 不是规范名称这一事实使理解变得复杂。 CName 记录指向规范名称。 (规范名称为 A 记录)。

    规范链接: 对于搜索引擎,页面 html 标头中的规范链接指定“一个真实页面”。您可以访问多个页面,但您使用规范链接告诉搜索引擎该页面与其他页面相同。这样做会让搜索引擎很高兴,因为您不会假装提供更多内容而只是重复,而不是在玩弄系统。它只索引一次。

    301 (http) 重定向: 对于搜索引擎,这表示页面 x 现在被页面 y 替换,并且所有搜索排名都可以转移到页面 y。如果它是一种“装饰性”的域名标准化,它还会告诉搜索引擎只索引一个页面,并且再次表明您没有试图欺骗搜索引擎。

    【讨论】:

      猜你喜欢
      • 2014-08-23
      • 2013-07-02
      • 2017-08-25
      • 2015-05-15
      • 2011-04-04
      • 2017-09-24
      • 2018-10-28
      • 2015-05-22
      • 1970-01-01
      相关资源
      最近更新 更多