将 WWW 重定向到非 WWW,或者相反? [关闭]

Posted

技术标签:

【中文标题】将 WWW 重定向到非 WWW,或者相反? [关闭]【英文标题】:Redirect WWW to non WWW, or the other way around? [closed] 【发布时间】:2012-12-24 02:48:35 【问题描述】:

我刚刚在我的网站上进行了 seo 审核并收到了这条消息...

确保 www.mysite.co.uk 和 myside.co.uk 未在其中运行 平行线。

从非首选主机名重定向请求很重要 因为搜索引擎将带有和不带有“www”的 URL 视为两个 不同的网站。

设置首选域后,对所有流量使用 301 重定向 到您的非首选域。

现在我的网站可以同时使用 www。并且没有 www。那么这是否意味着我的网站并行运行?

如果是这样,我该如何解决?我应该将我的非 www 指向 www 还是相反?

我在 linux/apache 服务器上使用 php

【问题讨论】:

我想说非 www 是首选。但这只是我不知情的意见。例如,SO 似乎就是这样做的。 我很确定在Google 上很容易找到关于如何 的答案。至于哪一个,看个人喜好了。我更喜欢非 www,除非您使用负载平衡器,否则我发现 www 是多余的。投票结束,因为这只会引起辩论。 no-www.org 和 www.extra-www.org 与此处相关。 我更喜欢非 www,因为它在我的移动设备上打字更快,而且指向您网站的链接更短且更具可读性 @BjørneMalmanger 但由于有重定向,您仍然可以输入非 www 并访问该站点,对吗? 【参考方案1】:

现在我的网站可以同时使用 www。并且没有 www。这也是 是指我的网站并行运行吗?

差不多。并行运行意味着访问者(人类或搜索引擎机器人)可以使用 www 和非 www 版本的 URL 访问相同的内容。

建议的做法是让两个主机名都处于活动状态,但使用 301 重定向将非首选主机名的所有流量重定向到首选主机名。

如果是这样,我该如何解决?

对于 Apache,将这些规则放在位于 wwwroot 目录的 .htaccess 文件中:

#########################
# redirect no-www to www
#########################

RewriteEngine On
RewriteCond %HTTP_HOST ^(?!www\.)(.+) [NC]
RewriteRule ^(.*) http://www.%1/$1 [R=301,NE,L]

-- 或--

#########################
# redirect www to no-www
#########################

RewriteEngine On
RewriteCond %HTTP_HOST ^www\.(.+) [NC]
RewriteRule ^(.*) http://%1/$1 [R=301,NE,L]

我应该将我的非 www 指向 www 还是相反?

没有明确的答案;两者都有其优点和缺点。请参阅 Yes WWW 了解为什么拥有 www 网址是好的,其竞争对手 No WWW 只是说“www. 已弃用。” 没有任何解释。

【讨论】:

【参考方案2】:

确实,为网站保留可用的wwwno-www 版本可能很麻烦,因为它会在您的网站的两个版本之间生成重复的内容。而且 Google 不喜欢重复的内容,这就是为什么将 www 重定向到 no-www 或相反的做法是很好的 seo 实践。

使用 Apache 服务器,您可以创建 .htaccess 文件(在您的域的根目录中)并插入这些行以将 (301 redirect) www 重定向到 no-www

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %HTTP_HOST !^example\.com [NC]
RewriteRule (.*) http://example.com/$1 [QSA,R=301,L]
</IfModule>

如果您愿意,您也可以选择相反的(从no-www 重定向到www)。如果您选择一种或其他解决方案,无论对于 seo 而言。

【讨论】:

重复内容问题请参考谷歌的规范解释。如果当前 url 不是你想要列出的永久链接,你应该在 header 中添加这个标签:support.google.com/webmasters/bin/…【参考方案3】:

我认为您应该使用 .htaccess 文件将非 www 重定向到 www:

这里是如何做到这一点和一些其他有用的技巧: http://roshanbh.com.np/2008/03/url-rewriting-examples-htaccess.html

【讨论】:

重定向哪个方向是一个有争议的问题。 我实际上更喜欢将 www 重定向到非 www,尽管正如 @ceejayoz 所说,这是一个见仁见智的问题 @adam 只是出于好奇,你用哪种方式做这件事有关系吗? 我只是觉得它看起来更清晰 - 有 www 基本上是退化的 @Oskwish 这几乎完全是美学的。重要的是既有效又规范。【参考方案4】:

www.domain.com 中的 www 是子域,可以是任何东西。喜欢( m.domain.com , x.domain.com 或任何东西。

但通常按照常规方法 www 是任何站点的默认子域。

大多数网站将 www.sitename.com 或 sitename.com 引用到同一页面。

所以别担心,继续吧..!!

【讨论】:

以上是关于将 WWW 重定向到非 WWW,或者相反? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

使用 PHP 将 WWW 重定向到非 WWW 重定向

IIS 将 www 重定向到非 www 和 http 到 https:是不是可以仅使用一个重定向来完成?

apache将http重定向到https,将www重定向到非www

如何通过 web.config 将 http 重定向到 https 并将 www 重定向到非 www?

将 https 重定向到非 www 和 http 到 www

S3 www 到非 www 重定向将 /index.html 附加到 URL