301跳转在那些情况下用到

2008-03-18  |  分类:SEO策略  |  735 views

什么是301转向?301转向(或叫301重定向,301跳转)是当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。

其它常见的状态码还包括,200表示一切正常,404网页找不到,302暂时转向,等等。

为什么要做网址转向?

除了前面介绍过的网址规范化问题外,还有很多需要做网址转向的情形。比如,为保护版权,你拥有不同TLD的多个域名:

company.com

company.net

company.org

company.com.cn

company.cn

等等。

很自然这些域名全部指向一个网站。如用company.com为主域名,其它域名就可以转向到company.com

或者你注册了公司全称域名longcompanyname.com,但太长 ,你也注册了缩写域名方便用户记住lcn.com,其中一个做主域名,另一个就可以转向到主域名。

以下的樂思蜀将SEO工作中所需要的301转向代码的总结,我觉得对一些编辑有用,所以将它转过来了,这些文档我之前在老黑BLOG见过.但他的不全面现在将他转过来.以便大家查阅. 

1、IIS下301设置

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

2、ASP下的301转向代码

<%@ Language=VBScript %>
<%
Response.Status=”301 Moved Permanently”
Response.AddHeader “Location”, “http://www.etcis.com/articles/301/”
%>

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.etcis.com/articles/301/“);
}
</script>

4、PHP下的301转向代码

header(”HTTP/1.1 301 Moved Permanently”);
header(”Location: http://www.etcis.com/articles/301/”);
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.etcis.com/” );
response.setHeader( “Connection”, “close” );
%>

7、Apache下301转向代码

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

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

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

2)重定向到新域名

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

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

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

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

8、Apache下vhosts.conf中配置301转向

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

<VirtualHost *:80>
ServerName www.etcis.com
DocumentRoot /home/lesishu
</VirtualHost>

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

Apache下除了以上2种方法,还有其他配置方法和可选参数,建议阅读Apache文档

301转向情况检测

  1. http://www.seoconsultants.com/tools/headers.asp
  2. http://www.internetofficer.com/seo-tool/redirect-check/

作者:阿猎
原载:阿猎的SEO博客
版权所有,转载请以链接形式注明作者及原始出处。

喜欢本文,那就收藏到: Del.icio.us Google书签 Digg Live Bookmark Technorati Furl Yahoo书签 Facebook 百度搜藏 新浪ViVi 365Key网摘 天极网摘和讯网摘 博拉网 POCO网摘 添加到饭否 QQ书签 Digbuzz我挖网

相关日志

  • 哇!恭喜您找到了一个独一无二的文章。

4条评论 关于 “301跳转在那些情况下用到”

  1. 小虾 发表于: 03月 20th, 2008

    你文章太长了,建议做个錨链接
    看到下面再往上翻很烦的

  2. aw 发表于: 03月 20th, 2008

    SEO……寒。。。。

  3. 阿 猎 发表于: 03月 24th, 2008

    小虾你的建议不错。
    我努力的把这点改正了。嘻嘻

  4. 阿 猎 发表于: 03月 24th, 2008

    郭启睿你好呀

    SEO怎么让你寒到了。


发表您的评论