用程序做301永久重定向的几种方法

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

    301重定向的方法有很多,这里整理了如何用程序做301永久重定向的一些常见方法供大家参考

1.PHP下的301重定向

  1. <?php  
  2. $the_host = SERVER['HTTP_HOST'];//取得当前域名     
  3. $request_uri = isset(SERVER['REQUEST_URI']) ? SERVER['REQUEST_URI'] : ”;//判断地址后面是否有参数     
  4. if($the_host != ‘www.xxxxxx.com’)//把这里的域名换上你想要的     
  5. {    
  6.    header(‘HTTP/1.1 301 Moved Permanently’);//发出301头部   
  7.    header(‘Location:http://www.xxxxxx.com’.$request_uri);//跳转到你希望的地址格式     
  8. }  
  9. ?>  

下面方法适用于dedecms, 此方法解决了301跳转带来的index.html尾巴的问题,有兴趣的可以试试看。

  1. <?  
  2. $jump301=1;//是否开启301跳转开关,1开 0关   
  3. $index_file=’index.html’;//首页文件 不支持SSI(shtml/shtm)   
  4. if(substr(SERVER['SERVER_NAME'],0,4)!=’www.’&&$jump301)  
  5. {  
  6. header(‘HTTP/1.1 301 Moved Permanently’);  
  7. header(‘Location:http://www.’.SERVER['SERVER_NAME']);   
  8. exit();  
  9. }  
  10. ?>  

根据自己程序将以上代码添加到根目录index.php文件中!

2.ASP下的301重定向

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

  1. <%@LANGUAGE=”VBSCRIPT” CODEPAGE=”936″%>  
  2. <%  
  3. Response.Status=”301 Moved Permanently”  
  4. Response.AddHeader “Location”,”http://www.xxxxxx.com/index.html”  
  5. Response.End  
  6. %>  

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

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

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

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

猜你喜欢

转载自blog.csdn.net/sbayje/article/details/8315631