<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Imported Rule 1">
<match url="ShowProduct/([0-9]*).html"/>
<action type="Rewrite" url="/view.asp?id={R:1}" />
</rule>
<rule name="Imported Rule 2">
<match url="about_([0-9]*).html"/>
<action type="Rewrite" url="/about.asp?id={R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
配置web.config文件由其它规则导入时要调整的地方:
1、match语句最前面不需要加“/”如:
<match url="/ShowProduct/([0-9]*).html"/>
修改为:
<match url="ShowProduct/([0-9]*).html"/>(注:去掉了最前面“/”)
2、action语句内不要使用转义符号。如:
<action type="Rewrite" url="/view\.asp\?id={R:1}" />
修改为:
<action type="Rewrite" url="/view.asp?id={R:1}" />(注:去掉了“.”与“?”的转义符号)
IIS7.5里面,你选择到创建的站点的时候,正常情况可以看到一个url重写模块,你可以在里面手动编辑伪静态的路径重写,也可以直接导入.htacces文件将里面的规则转化为iis可用的规则,并且点击应用生成web.config之类的文件,如果找不到url重写模块,就需要另外安装了,但是网上资料很多,无非就是导入一个dll文件就解决了。
一、安装:1、从官网下载完全版ISAPI_Rewrite3(http://www.helicontech.com/download/isapi_rewrite/ISAPI_Rewrite3_0073.msi)并安装;
2、将Rewrite破解文件夹中的ISAPI_Rewrite.dll文件覆盖到程序安装目录下替换即可;
3、打开安装目录下的httpd.conf文件,在里面输入以下内容并保存,这样就没有使用天数的限制了;
RegistrationName= wlqcwin
RegistrationCode= 2EAD-35GH-66NN-ZYBA
4、安装好后记得给ISAPI_Rewrite3软件安装目录network service的读权限,否则会出现无法加载ISAPI_Rewrite的错误。
二、测试:
1、在某个单独网站(如:localhost)新建.htaccess文件,并在文件中写上以下规则:
RewriteEngine on
RewriteBase /
RewriteRule ^get-(.*).html /get.asp?id=$1
#说明:RewriteEngin on表示启用重写功能;RewriteBase / 表示重写的路径是从网站根目录开始。
2、在localhost下新建get.asp文件,文件内容以下:
<% response.write("get_id=" &request.querystring("id")) %>
3、在浏览器中分别输入http://localhost/get-123.html 和 http://localhost/get.asp?id=123 如果结果是一样的,则表明重写成功。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)