问题
搜索引擎认为http://domain-name.com和http://www.domain.com 是完全不同的域名。如果你的网站与注册了两个URL的网站链接,实际上就等同于破坏了网站的价值及链接流行度潜在的利益。
解决方案
在服务器理解,对“non-www”版域名进行301重定向,实质上就是“永久”的重定向,这样就可以把你的链接流行度有效地固定在一个单独的URL上。这种固定有助于你网站获得及维持高排名。
如何进行301重定向
通知服务器你想将你网站的流量完全重定向到另一个URL上。首先,确定你的网站在哪种服务器上运行。主要有Microsoft 和 Apache (Linux/Unix)两种服务器可供使用。确定服务器类型后,请遵循其后面的相关指令来实现重定向。注意,这对于有技术知识基础的人来说是再好不过的了。
- Apache服务器实现301 重定向
- 确保你主机提供商的Apache Rewrite Module组件已经打开,这是实现301重定向功能的必要前提。多数情况下,这个组件未被激活,只要点击激活就可以。
进入服务器上的httpd.conf文件,那么你就可以自行激活这些组件了。打开httpd.conf文件,若出现错误,请在错误处返回,忽略下面这一行信息:
LoadModule rewrite_module modules/mod_rewrite.so
然后保存文件,重启服务器,按照下列步骤进行
- 从你网站的原文件夹中找出httpd.conf文件,将它下载到你机器中某个可以编辑该文件的文件夹中。
- 复制httpd.conf文件,保存到安全的地方─但不要编辑这个复制文件;需要旧版本httpd.conf文件时,以供使用;
- 打开下载在写字板中的原httpd.conf文件
- 将下面代码添加到httpd.conf文件中。用你自己网站的域名信息代替“example.com”,注意不要更改其他地方。
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example.com
RewriteRule (.*) http://www.example.com/$1 [R=301,L]
- 将更改的httpd.conf文件上传到从你网站上下载它的原位置
- 上传完成后,打开浏览器,访问你网站的“non-www”的那个地址。如果.htaccess文件执行任务的话,浏览器的地址栏中会立即显示出你的“www”的这个域名,那么你已经被重定向到这个地址上了。
- 想确保重定向准确无误,建议访问this URL这里,在HTTP Server Header Checker检测工具中输入你的“non-www”的网站地址检测一下结果。这个工具可以报告服务器是否提供301重定向功能。搜索引擎访问网站时会检查这一点的。结果如下就是正确的:
#1 Server Response: http://example.com
HTTP Status Code: HTTP/1.1 301 Moved Permanently
Date: Wed, 14 Mar 2007 22:49:28 GMT
Server: Apache/1.3.27 (Unix) PHP/4.4.1 FrontPage/5.0.2.2510 mod_ssl/2.8.14 OpenSSL/0.9.6b
Location: http://www.example.com/
Connection: close
Content-Type: text/html; charset=iso-8859-1
Redirect Target: http://www.example.com/
#2 Server Response: http://www.example.com/
HTTP Status Code: HTTP/1.1 200 OK
Date: Wed, 14 Mar 2007 22:49:28 GMT
Server: Apache/1.3.27 (Unix) PHP/4.4.1 FrontPage/5.0.2.2510 mod_ssl/2.8.14 OpenSSL/0.9.6b
Connection: close
Content-Type: text/html
-
恭喜您,重定向已完成。
如果重定向不能执行命令,请恢复保存在网站中的.htaccess 后备文件。恢复后返回检查电脑中校订过的.htaccess文件,和上面的指令进行对比保证没有错误存在。如没有错误,服务器会要求提供一些专门的程序,但也许它们不是常见的问题。如想获得更多信息请联系你的主机供应商。