深蓝之网络

探讨网站建设,主机,域名,VPS,服务器

« GODADDY VDS/VPS 使用经验与问题二再换主机商-又一次VPS选择过程 »

301转向代码-带判断可用于同一目录

301转向代码-带判断可用于同一目录。 之前网络上的301重定向代码都是直接转向,这样的话就需要把域名解析到不同的主机上。然后再把不带WWW的域名主机上然后做301转向到www主机上。这样就需要两个主机,成本和费用比较高。如果指向同一主机的话会造成301转向死循环。

要解决这个问题,其实可以在301转向前加一个判断。如果不带WWW的REQUEST转到WWW,带WWW的则不做处理。
 

ASP Code
  1. <%   
  2. if request.ServerVariables("HTTP_HOST")="j218.com" then   
  3. Response.Status="301 Moved Permanently"  
  4. Response.AddHeader "Location","http://www.j218.com/"  
  5. Response.End  
  6. end if   
  7. %>  

 如果是.net程序的话,可以做在首页的Page_Load,或者Global.asax里有个“Application_BeginRequest”事件中做转向。
 

C# Code
  1. if (!Request.Url.Host.ToLower().Contains("www  
  2.     {  
  3.     Response.Clear();  
  4.     Response.StatusCode = 301;  
  5.     Response.Status = "301 Moved Permanently";  
  6.     Response.AddHeader("Location", "http://www." + Request.Url.Host + Request.Url.PathAndQuery.ToLower().Replace("/index.aspx",""));   
  7.      Response.End();   
  8.     }    

 


除非注明,文章均为深蓝网络原创,转载请注明出处,谢谢。
本文地址:http://www.dieep.com/Category/program/5.html

相关文章:

    最新评论:

    发表评论:

    ◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

    日历

    最新评论及回复

    最近发表

    Copyright www.dieep.com. All Rights Reserved.

    Powered By Z-Blog 1.8 Walle Build 100427