301 是“假”子域的正确重定向代码吗?

Posted

技术标签:

【中文标题】301 是“假”子域的正确重定向代码吗?【英文标题】:Is 301 the correct redirect code for "fake" subdomains? 【发布时间】:2010-12-23 13:32:23 【问题描述】:

我的网站为每个用户分配了一个虚假的子域

http://username.mysite.com/ 

重定向到

http://mysite.com/shop/username

第二个链接是内部使用的,分配为链接rel="canonical",我想在浏览器中显示为正确的url,子域基本上只是为了方便我的用户。

问题是 301 在这种情况下是否合适? 301 重定向用于现在永久指向其他地方的链接,这意味着旧链接已被弃用。我担心的是,我会通过使用 301 重定向来吸引不良的 SEO juju,同时仍然提倡/促进使用旧链接。

【问题讨论】:

您希望用户在浏览器中看到用户名子域吗?如果是,您不想使用重定向,因为他们会在浏览器中丢失子域。如果您不想在搜索引擎中使用用户名子域页面,我建议您在子域上提供的页面上添加元标记 。这将阻止搜索引擎索引/关注这些页面。 是的,我确实想在地址栏中看到重定向的 url,这就是我首先重定向的原因。我的问题是 301(而不是 302 等)是否合适,而不是如何防止搜索引擎找到这些页面; "noindex,nofollow" 不是一个选项,因为页面需要可见。 啊,那么是的,你想要一个 philfreo 建议的 301 重定向。 【参考方案1】:

是的,301 在这里是正确的选择,因为搜索引擎将索引最终 URL 而不是子域。我从来没有听说过有太多的 301 重定向会受到任何惩罚。其他重定向类型不太准确地描述了您要查找的内容(临时移动等)。

【讨论】:

我不担心 301 的数量会导致惩罚,但随着时间的推移,提倡/推广 301 链接是否会损害我的网站排名,正如推广链接所暗示的那样是一个活跃的资源。 例如,如果您设置子域以方便用户而不是输入完整的 URL(Google 使用 analytics.google.com 执行此操作),这是一回事,但我认为您不应该积极链接到子域,除非您将站点切换为使其成为规范 URL。也就是说,我还没有听说这样做会受到惩罚,但我可能是错的。您似乎可以巧妙地向您的用户宣传子域 URL,而无需在任何地方实际链接到它。

以上是关于301 是“假”子域的正确重定向代码吗?的主要内容,如果未能解决你的问题,请参考以下文章

301 在 Django 中重定向 www 子域

Laravel 子域端点不断重定向并出现 301 错误

301从主域(www和非www)重定向到子域

使用 DNS 将子域重定向到特定 url

如何重定向不存在的子域?

Nginx 将子域转换为路径组件而不进行重定向