淘小兔

301重定向是当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。301重定向主要是将需要转移的网址重定向另一个新的网址上,并且是永久性转移。当网站的域名发生变更后,搜索引擎只对新网址进行索引,同时又会把旧地址下原有的外部链接如数转移到新地址下,从而不会让网站的排名因为网址变更而受到丝毫影响301重定向无疑是最佳的办法。

一:通过.htaccess做重定向

重定向旨在使域名唯一,是网站SEO必须要做的,重定向www.zhishitu.com到 zhishitu.com也是出于同样的原因,只是形式不同。
打开.htaccess文件,加入以下规则。(下面的规则是针对主域名的,子域名要修改)

1.重定向zhishitu.com到 www.zhishitu.com

    RewriteEngine On     RewriteCond %{HTTP_HOST} ^zhishitu.com [NC]    RewriteRule ^(.*)$ http://www.zhishitu.com/$1 [L,R=301]

2.重定向www.zhishitu.com到zhishitu.com

    RewriteEngine On    RewriteCond %{HTTP_HOST} !zhishitu.com$ [NC]     RewriteRule ^(.*)$ http://zhishitu.com/$1 [L,R=301]

3.重定向zhishilun.com到www.zhishitu.com

    RewriteEngine On    RewriteCond %{HTTP_HOST} !zhishilun.com$ [NC]    RewriteRule ^(.*)$ http://www.zhishitu.com/$1 [L,R=301]

4.重定向 zhishilun.com to zhishitu.com

    RewriteEngine On    RewriteBase /    RewriteCond %{HTTP_HOST} !zhishilun.com$ [NC]    RewriteRule ^(.*)$ http://zhishitu.com/$1 [L,R=301]

5.重定向zhishilun.com/file/file.php 到 zhishitu.com/otherfile/other.php

    RewriteCond %{HTTP_HOST} ^www.zhishilun.com$    RewriteRule ^file/file.php$ http://www.zhishitu.com/otherfile/other.php [R=301,L]

二:通过PHP做301重定向

1.PHP下的301重定向

$the_host = $_SERVER['REQUEST_URI'];//取得当前域名  $request_uri = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] :'';//判断地址后面是否有参数  if($the_host != 'www.xiaotua.com')//把这里的域名换上你想要的  {     header('HTTP/1.1 301 Moved Permanently');//发出301头部   header('Location: http://www.xiaotua.com'.$request_uri);//跳转到你希望的地址格式  }

2.ASP下的301重定向

第一步、建立301.asp内容如下:

<%@LANGUAGE=”VBSCRIPTCODEPAGE=”936″%><%Response.Status=”301 Moved PermanentlyResponse.AddHeaderLocation”,”http://www.zhishitu.com/index.html”Response.End%>

将301.asp上传到网站根目录,并在虚拟主机控制面板将301.asp添加到默认首页最前面!

3.ASP .NET下的301重定向
在index.aspx中写入如下代码并上传空间。

//判断是否是www.开头,如果不是301调整到www.域名if (!System.Web.HttpContext.Current.Request.Url.ToString().StartsWith “http://www.”)) {//301 重定向到 /目录下 HttpContext.Current.Response.StatusCode = 301;HttpContext.Current.Response.Status = “301 Moved Permanently”;HttpContext.Current.Response.AddHeader(“Location”,“http://www.zhishitu.com/”);HttpContext.Current.Response.End();}//注意,以上代码只适合动态网站,静态网站无效!

 

  4、JSP下的301重定向

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

关于网站如何用程序做301永久重定向,就说这么多,301永久重定向其他方法还有很多,有兴趣可以自己网上找下。

提示:如果返回报头中只有Location,但没有明确提到状态代码时,就意味着一个302临时重定向。请谨记于心。例如下面都是302重定向:

  PHP 下的302重定向

<?   php header("Location: http://www.zhishitu.com");?> 
 

  Asp 下的302重定向

<%   Response.Redirect "http://www.zhishitu.com/"%>

  ASP.NET 302重定向

<script runat="server">  private void Page_Load(object sender, System.EventArgs e)  {     Response.Redirect("http://www.zhishitu.com");  }</script>

  JSP 下的302重定向

<%    response.sendRedirect("http://www.zhishitu.com");%>

  总结:301重定向是一种对搜索引擎最友好的网址转向方法。在众多重定向技术中,301永久性重定向是最为安全的一种途径,也是极为理想的一款解决方案。无论是URL永久性改变,还是多种格式URL规范化都离不开301重定向。

下载仅供下载体验和测试学习,不得商用和正当使用。

下载体验

请输入密码查看内容!

如何获取密码?

 

点击下载