IIS 拟静态 ISAPI_Rewrite配置

来源:互联网 发布:淘宝长尾商家扶持政策 编辑:程序博客网 时间:2024/05/22 12:30

  IIS拟静态,一直以为是个很简单的事,几次都是很顺利的给弄成功了,网上也有教程,几步就弄好。但是出了问题的帖子还真少。。话说回来,今天出的这个问题,还真折腾了我一天,曾以为是个很诡异的问题,弄清楚了还真有点哭笑不得。。原来问题这么简单。。不说了,结合网上的帖子,整理出我的心得。(一直想把自己的博客弄出来,也不知道时间都花到哪去了,自己也写过很多小程序,也有很多方面的心得,希望都整理到博客上去,提高自己的同时也能帮助到别人)。。

 首先,认识下ISAPI_Rewrite。它是专门为IIS设计的URL处理引擎,ISAPI_Rewrite有两个版本:ISAPI_Rewrite Full与ISAPI_Rewrite Lite。

      ISAPI_Rewrite Lite是免费版本,但不支持反向代理功能,和站点独自享用自己的http.ini,也就是说整个IIS只能设置一个全局的httpd.ini,我觉得这对一般的企业多站服务器是没半点影响的,所以别和我一样,追求完美,一定要找FULL版的破解版。结果下了N多,却发现都是假的,既然lite版能达到你的要求,就别发烧了。如果这么轻易的就找到full版破解,人家公司还赚什么钱啊。

       ISAPI_Rewrite Full需要购买,不然只能使用30天。 所以当网上帖子给你个下载地址的时候,首先要注意了,是FULL版的,还是lite版的。我就吃个亏,安得是full版,等到30天突然失灵了,我就总在服务器上排查问题,最近公司服务器老受黑客攻击,也不知道哪里给黑了。于是不停的重复着卸载,安装。安装好,进去修改http.ini 加入了重写规则,重启IIS后,网站-》属性->ISAPI筛选器中的绿灯亮的很HAPPY,一点异常都察觉不到。但是怎么着拟静态就是实现不了。后面才知道是到期。。 汗,我顿悟后狂砸鼠标,害我死了多少脑细胞。。。

  

      http://www.helicontech.com/isapi_rewrite/这个是ISAPI_Rewrite的官方下载地址,要下当然下新版,目前新版是ISAPI_Rewrite3,网上找到的帖大部分是老帖,按他们的链接下下来的还是ISAPI_Rewrite2。ISAPI_Rewrite2和3,安装都是一样的,基本上下一步下一步就能搞定,而且IIS也是自动就能加载到的,唯一需要进行的配置就是需要修改http.ini文件,ISAPI_Rewrite2安装目录下能找到这个文件,很好找。。。ISAPI_Rewrite3就没这个文件,只有httpd.conf.但是这个高版本的就好用多了。网站-》属性->(你会发现多了一个选项卡)ISAPI_Rewrite选项卡。。。所有设置就在这里。。

  步骤:1:在你喜欢的目录上新建个httpd.ini文件。

    2:IIS属性->网站-》属性->ISAPI_Rewrite选项卡-》importfrom  V2.0导入你建的httpd.ini.

    3: 点Edit: 把你的url转换规则加到最后。。 ok了。。so easy..

转换规则格式 例写一条:RewriteRule ^(.*)/question-id-([0-9]+)\.html$ $1/question\.php\?id=$2

用来把 http://www.网站.com/question-id-213.html;

 转换成 http://www.网站.com/question.php?id=213; 其中213是随便的数字组合,代表参数值。

规则符号解读:

. 表示匹配除换行符以外的任意字符

+ 表示前面的字符可以出现一到任意多次

* 表示前面的字符可以出现零到任意多次

() 表示一个表达组,可以拿它和加减乘除法一起理解

?! 表示断言这个符号后面的字符如果出现则不再进行接下去的匹配

\ 表示转义符号,比如网址中的.是规则内置的运算符号,要把它通过\转义成字符。

| 表示或者,用于连接多种可能


    我也够啰嗦的。。主要是有点火话就多了点,希望对你有帮助。。