什么是301重定向、301转向、301跳转。301是W3C规定的HTTP状态码中的一种。301重定向、301转向、301跳转都是一个意思,就是当用户或搜索引擎向网页服务器发出浏览请求时,服务器返回的状态码,表示本网页永久性转移到另一个地址。其它常见的状态码还有404网页找不到、200正常返回、302临时转向等。下面告诉您做301转向有什么用?
我们知道了301重定向可以把一个网站永久性地重定向到另外一个网站。301重定向在搜索引擎方面意义非常重大,301重定向可以转移网站的权重。具体作用在以下几方面:第一、我们可以利用301重定向进行网站迁移,就是换域名,比如说原来网站的域名太长,不好记,用户体验不好,我们可以换到新的简短的好记的域名上,用301重定向可以实现老站域名的权重转移到新站域名上面。第二、就是可以利用301重定向集中网站主页的权重,也就是URL标准化,把分散的权重全部集中到主页,网站权重高了可以得到好的排名,具体的设置方法可以看我写过的这篇文章:什么是URL标准化。第三、可以利用301重定向实现网站页面、目录、域名之间的301重定向。
因为301重定向(301转向、301跳转)是做SEO的朋友经常要用到的,基本上每个网站都做着301重定向,我在这里把301重定向的具体的操作方法谈一下。
一、用.htaccess实现301转向(这是最常用到的301重定向的设置方法,适用于Apache+PHP+MySQL环境)
.htaccess可以实现文件、目录、域名之间的301重定向,常用到的URL标准化。
把不带www的域名全部带上www,设置代码如下:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^abc.com$ [NC]
RewriteRule ^(.*)$ http://www.abc.com/$1 [L,R=301]
把带www的域名全部去掉www,设置代码如下:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.abc.com$ [NC]
RewriteRule ^(.*)$ http://abc.com/$1 [L,R=301]
二、用Rewrite实现301转向
RewriteEngine On
RewriteRule ^(.*)$ http://www.abc.com/ [R=301,L]
三、用PHP代码实现301重定向
这个代码是加在index.php文件最上面的,用PHP进行301重定向不能实现目录的重定向
四、用ASP代码实现301重定向
在 index.asp 或 default.asp 的最上面加入以下代码:
<% Response.Status=”301 Moved Permanently” Response.AddHeader “Location”,”http://www.abc.com/” Response.End %>
转载:www.jimaohua.net