求:基于iis7.5的URL跳转(301跳转)

求:基于iis7.5的URL跳转(301跳转)

       在购买域名时,域名本身是不带有www的,但由于域名要通过DNS服务器解析后才可以使用,在这个过程中每一个域名是会指向一个web服务器ip地址,由于在很早之前网站方都会增加一个"www"的子域名来帮助客户以更多的路径访问网站,客户通常都会按照:"www.++.com"的形式来访问站点。如果你没有做这个www的解析那么"www.++.com"就不能访问,对于不懂技术或者不明白解析的客户来讲,这个问题可能会造成他不能访问你的站因为他只是知道用带有"www"的形式访问你的站点,可能不知道"++.com"也是同样可以访问的。所以,后来也就有了更多人在延续这个做法。我们在购买空间域名时,服务商也会随手就帮你做了这个"www"的解析,当然,这个解析的服务器地址是和没有"www"相同的,造成,你用带"www"的和不带两个域名同时可以访问一个同样的内容。说白了这个问题的答案就是,能够让初次使用互联网的人更快的访问进你的网站。

      但是这样的话会分散某个域名的流量与PR值,最好是将所有访问定向到某个域名下。 可以通过使用服务器技术实现的url转发功能(url-forwarding 或 url redirect),转发到带www的域名来访问。但是我们说到用这种url转发方式是对seo不利的,对搜索引擎最友好的跳转方式是使用301转向,也叫301跳转301重定向。

      所以这里就有一些疑问了:为什么godaddy等域名注册商提供的url转发功能是不利于seo的,url转发的原理是什么?如果要用301转向,那么Linux apache, Windows IIS, php, ASP, ASP.NET, JSP 分别该如何设置来实现301重定向?

301重定向的作用

     为什么要使用301转向,首先第一条就是刚才我们提到的为了seo优化,在如何url网址规范化中也提到设置301转向后,原来的页面将返回301 HTTP 状态码给浏览器或者搜索引擎,告知搜索引擎次页面已经永久重定向到了新的网页上,spider就不会索引原网页,同时也会将原网页的PR权重传递给跳转到的新网页。如果返回的是302状态码,则告诉spider页面跳转只是临时的,spider仍然会索引原网页,这就造成了重复页面问题:即Google 补充材料。如www.pqshow.com 302 跳转到 pqshow.com它们就会被当做两个重复页面。 其次由于各种原因要更换域名时可以使用301重定向将老域名301转向到新的域名。这样老域名的流量不会流失PR权重也会转移。另外当有注册了多个不同域名指向到同一网站时,也可以只设置一个主域名将其他域名设置301转向到主域名,这样各个域名就不会分散权重。因此使用301转向很有必要。

URL转发的原理

     url转发有两种方式,隐藏转发和(url转发后浏览器地址栏输入的网址不变)不隐藏转发(也叫显性转发,url转发后地址栏显示的地址为转发后的网址)。有人测试过不管是隐藏转发还是不隐藏转发,根据不同的域名注册服务商可能会返回不同的http header。有的域名服务商管理后台设置的url转发功能(URL Forwarding)会使服务器返回302状态码给搜索引擎,而不是301 http 状态码。 据说这类url转发有的是通过给浏览器窗口套用一个框架iframe的方式来实现隐藏转发,有的则是使用Javascript或Meta Refresh来实现不隐藏方式的url转发,很少是真正用了301 重定向方法的。所以大家还是尽量少用url转发功能而是自己去手工设置实现301转向。

 

以上是一些URL转发的原理,但是我在iis7.5上直接设置的转发,会出现一些问题,我本身的程序是用asp.net4.0开发的,并设置了无后缀名的URL伪静态地址(伪静态方式不是微软官方提供的URLRewrite组件,是基于和Discuz!NT的URL重写方式),设置完成后会出现一些死循环(按照这种方式设置的:http://www.cnblogs.com/erudite/archive/2011/12/02/iis7_301.html)错误 提示,我的服务器是Windows server 2008 r2;哪位大神有设置过的,希望在文章下面留言啊!谢谢!

 

 

posted on 2012-12-19 14:22  朩馬  阅读(894)  评论(2编辑  收藏  举报