搜索

当前位置:首页 > 全栈分享 > 服务器 > 正文

同域名下两个静态链接之间的301跳转实现方法

发布时间:2019-03-24 23:25:47作者:魏义齐阅读:()

本文为博主原创文章,未经博主允许不得转载。

本以为写了文章“301跳转规则的复杂写法及详细解读”之后我对301跳转已经有一个非常深入的认识了,但是这次导航改版同域名下静态链接之间的301跳转又把我难住了,301跳转看起来简单,但是它的情况非常多,这点做网站运维的人应该都深有体会。

本文以win2008服务器为例,要做跳转的url对如下:
需要做301跳转的url对
https网站一定要保证http跳转到https是正常的,以上图前两对url为例,301跳转在web.config中的写法如下:
  1. <rule name="static1" stopProcessing="true"> 
  2.     <match url="^html/zzbw/seo/" /> 
  3.     <conditions logicalGrouping="MatchAll" trackAllCaptures="false" /> 
  4.     <action type="Redirect" url="https://www.weiyiqi.net/html/qzfx/seo/"  /> 
  5. </rule> 
  6. <rule name="static2" stopProcessing="true"> 
  7.     <match url="^html/zzbw/bkxg/" /> 
  8.     <conditions logicalGrouping="MatchAll" trackAllCaptures="false" /> 
  9.     <action type="Redirect" url="https://www.weiyiqi.net/html/gy/bkxg/"  /> 
  10. </rule> 

name是单条跳转规则的名称,这个只要不重复就行了,重复会出现500错误。再次强调action里的url一定要写全,301跳转做好后要在百度搜索资源平台提交改版规则,但是平台验证这个改版规则只会验证一次跳转,即前一个链接的https到后一个链接的http,验证失败的反馈是协议头不一致,所以action里面的url必须是一个以https开头的具体链接,详情大家可以看文章“记录百度搜索资源平台验证改版规则的一个坑”里的介绍。另外,不建议大家在iis上操作,一堆你看不懂的配置,在web.config里写更简单。

上图后六组url对的301跳转在web.config里的写法如下:

  1. <rule name="static3" stopProcessing="true"> 
  2.   <match url="^html/gy/(314|284|280|131|130|129).html" /> 
  3.   <conditions logicalGrouping="MatchAll" trackAllCaptures="false" /> 
  4.   <action type="Redirect" url="https://www.weiyiqi.net/html/grxg/{R:1}.html"  /> 
  5. </rule> 

一些参数问题大家可以点第一段中的链接了解。

说句实话,我现在对301跳转依然是心里没底,只能说以后遇到同类的能依葫芦画瓢整出来。

本文标签:,您可以阅读与「」相关的所有文章

魏义齐全栈技术交流:魏义齐全栈技术交流

上一篇:iis7如何利用web.config实现防盗链功能下一篇:记录百度搜索资源平台验证改版规则的一个坑

赞助本站

原创不易,您的赞助就是博主更新的动力!

赞助本站可在赞助光荣榜留下外链信息,支付宝扫此二维码可领红包