Skip to main content
 首页 » 搜索优化

SEO中网址规范化及301重定向方法大全

15年前 (2009-08-20)28941

现在大多数网站都存在一些内容相同但网址(URL)不一样的重复内容,这些重复的内容对于搜索引擎来说却可能被认为是复制网页,复制网页虽然不会被惩罚但因多个网址存在分散了页面权重,肯定不利于其排名。解决这个问题就需要网址规则化处理,网址规范化(URL canonicalization)从字面上理解就是搜索引擎挑选最好的URL网址作为真正网址的过程,通过网址规范化处理把最好的URL网址反馈给搜索引擎。

解决网址规范化问题有好多方法,目前我们讲使用301重定向来进行网址规范化处理。

什么是301重定向?

301重定向(301转向、301跳转)是当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。301代表永久性转移(Permanently Moved),301重定向是网页更改地址后对搜索引擎友好的最好方法。只要不是暂时搬移的情况,都建议使用301来做转址。

如何来做301重定向?

下面是我从网上收集的进行301重定向的方法,基本上全了,如果你有新的方法,欢迎你进行补充!

1、IIS下301设置

Internet信息服务管理器 -> 虚拟目录 -> 重定向到URL,输入需要转向的目标URL,并选择"资源的永久重定向"。

2、ASP下的301重定向代码

<%@ Language=VBScript %> <% Response.Status="301 Moved Permanently" Response.AddHeader "Location", "

http://www.mydomain.com

" %>

3、ASP.Net下的301重定向代码

<script runat="server"> private void Page_Load(object sender, System.EventArgs e) { Response.Status = "301 Moved Permanently"; Response.AddHeader("Location","

http://www.mydomain.com

"); } </script>

4、PHP下的301重定向代码

header("HTTP/1.1 301 Moved Permanently"); header("Location: 
http://www.mydomain.com
"); exit();

5、CGI Perl下的301重定向代码

$q = new CGI; print $q->redirect("
http://www.new-url.com/
");

6、JSP下的301重定向代码

<% response.setStatus(301); response.setHeader( "Location", "
http://www.mydomain.com/
" ); response.setHeader( "Connection", "close" ); %>

7、ColdFusion下的301重定向

<cfheader statuscode="301" statustext="Moved permanently">

<cfheader name="Location" value="
http://www.new-url.com
">

8、Apache下301重定向代码

建立.htaccess文件,输入下列内容(需要开启mod_rewrite):

1)将不带WWW的域名转向到带WWW的域名下

Options +FollowSymLinks RewriteEngine on RewriteCond %{HTTP_HOST} ^mydomain.cn [NC] RewriteRule ^(.*)$ 
http://www.mydomain.cn/$1
 [L,R=301]

2)重定向到新域名

Options +FollowSymLinks RewriteEngine on RewriteRule ^(.*)$ 
http://www.mydomain.cn/$1
 [L,R=301]

3)使用正则进行301重定向,实现伪静态

Options +FollowSymLinks RewriteEngine on RewriteRule ^news-(.+)\.html$ news.php?id=$1

将news.php?id=123这样的地址转向到news-123.html

9、Apache下vhosts.conf中配置301重定向

为实现URL规范化,SEO通常将不带WWW的域名转向到带WWW域名,vhosts.conf中配置为:

<VirtualHost *:80> ServerName www.mydomain.cn DocumentRoot /home/lesishu </VirtualHost>
<VirtualHost *:80> ServerName mydomain.cn RedirectMatch permanent ^/(.*) http://www.mydomain.cn/$1 </VirtualHost>

当然Apache下进行301重定向除了以上2种方法,还有其他配置方法和可选参数,欢迎你的补充。

在进行301重定向后,我们如何检测我们做的301重定向是否正确,下面是3301重定向检测工具。

http://www.internetmarketingninjas.com/header-checker/

补充:采用伪静态重写 IISAPI_Rewrite  各版本301转向大全 http://www.chenchanglong.com/log/ISAPI_Rewrite-301.html

 

评论列表1条评论
airmax
airmax回复 设置后跳转成功!谢谢了!~
发表评论
新浪微博
微信