使用Microsoft URL Rewrite Module for IIS 7.0修改WEB.CONFIG即可实现*.HTML伪静态 无需修改应用程序映射

分类:服务器| 发布:camnprbubuol| 查看: | 发表时间:2012/4/25

在IIS5和IIS6时代,我们使用URL REWRITING可实现URL重写,使得WEB程序实现伪静态,但默认情况下只能实现.ASPX的伪静态,如果要实现伪静态*.HTML的页面,需要将ISAPI里面的*.HTML应用程序映射改为.NET的ISAPI。但在IIS 7时代,这一切已经变得非常简单了,您在WEB.CONFIG中就可以管理这一切了。

 

在服务器上安装好Microsoft URL Rewrite Module,具体下载地址如下:

Microsoft URL Rewrite Module for IIS 7.0 (x86)

下载地址:http://www.iis.net/downloads/default.aspx?tabid=34&g=6&i=1691 

Microsoft URL Rewrite Module for IIS 7.0 (x64)

下载地址:http://www.iis.net/downloads/default.aspx?tabid=34&g=6&i=1692

 

安装好之后如图:

 

 

可以直接在IIS 7里面进行添加重写规则,也可以直接在WEB.CONFIG中设置:

 

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    
<system.webServer>
        
<rewrite>
            
<rules>
                
<rule name="Rewrite to article.aspx">
                    
<match url="^article/([0-9]+).html$" />
                    
<action type="Rewrite" url="article.aspx?newid={R:1}" />
                
</rule>
            
</rules>
        
</rewrite>
    
</system.webServer>
</configuration>
 

然后,访问 /article/366.html 就是 访问/article.aspx?newid=366的结果了,无需像以前IIS 6时代一样去添加*.HTML的ISAPI的应用程序映射了。(这对使用虚拟主机的站点来说可是个福音,不用再叫管理员去帮你加设置了,自己在WEB.CONFIG中可以设置这一切了)

 

下面还附一个重写的规则转换工具。

可以将您原有的第三方组件或apache的.htaccess规则配置,快速按规范转化为IIS7.0的使用web.config重写规则。

 

在Win7安装了IIS7.5之后,搭建一些网站或者博客,但是IIS7.5本身没有URL Rewrite功能,也就是无法实现网址的伪静态化。

从网上找了一下,原来微软IIS官方网站给IIS7及以后续版本提供了个URL重写组件。

下载地址:

下载完成之后,安装重写模块。
下载的是本地msi包(rewrite_2.0_rtw_x64.msi或者rewrite_2.0_rtw_x86.msi),双击安装即可(安装之前最好先停止IIS服务,如果IIS服务没停的话,安装完成后会要求重启系统。)

安装完成后,打开“Internet 信息服务(IIS)管理器”,就可以看见模块中多了一个Url Rewrite 模块。

进入需要设置的站点,双击 Url Rewrite 图标,进入设置界面。

点击Add Rule(s)输入Rewrite重写规则。

确认无误后,点击右栏的“应用”按钮,大功告成

365据说看到好文章不转的人,服务器容易宕机
原创文章如转载,请注明:转载自郑州网建-前端开发 http://camnpr.com/
本文链接:http://camnpr.com/archives/556.html