现在的位置: 首页 > 综合 > 正文

使用ISAPI_Rewrite对asp.net实现URL重写,显示HTML后缀

2012年11月10日 ⁄ 综合 ⁄ 共 781字 ⁄ 字号 评论关闭

ISAPI_Rewrite利用IIS的ISAPI实现URL重写的,ISAPI_Rewrite是一个工具,下载地址为:http://www.isapirewrite.com/download/isapi_rwl_x86_0067.msi,下完,直接NEXT装一下就可以,位置可以随便装,但要记住,然后打开IIS,在网站上-右击-属性-ISAPI筛选器,起了名字,就叫"URLRewrite"吧,随便起的,然后浏览找到你刚才安装根目录的ISAPI_Rewrite.dll这个文件然后确定。

进入刚才安装ISAPI_Rewrite的文件夹里面,找到httpd.ini这个文件,然后在属性上去掉“只读”,然后这里有点难了,需要使用正则表达式来实现了,方法很多,我举个例子希望对大家有所帮助,比如我想要把www.xx.com/web/new.aspx?id=1 改成 www.xx.com/web/new/1.html这样的URL,需要增加一条正则表达式   RewriteRule ^(.*)/web/new/([0-9]+)\.html$ $1/web/new\.aspx\?id=$2

OK,这样就基本可以了,还有一点,一开始我以为new.aspx?id=1 会自动变成 web/new/1.html,
其实是不行的,在编写网站时就需要把传递值的方式改变了

还有在WIN2003里面使用方法,在IIS 6.0里面一直提示“未加载”,后来查了又查,原来是文件的权限问题。IIS 6.0 ISAPI_Rewrite 是在Service帐号下运行的,将数据文件的读写权限给予Service 帐号后,ISAPI_Rewrite 终于可以正常运行了。

 

文章出处:http://www.diybl.com/course/4_webprogram/asp.net/netjs/2008331/107874.html

抱歉!评论已关闭.