IIS6配置伪静态(使用ASP.NET的UrlRewriter组件)


关键词

IIS6配置伪静态(使用ASP.NET的UrlRewriter组件)

摘要

<p>IIS6配置伪静态(使用ASP.NET的UrlRewriter组件),本文分享如何使用ASP.NET自带的UrlRewriter组件,即Intelligencia.UrlRewriter.dll,在IIS上来实现伪静态功能。<br /></p>

IIS6配置伪静态(使用ASP.NET的UrlRewriter组件)

本文分享如何使用ASP.NET自带的UrlRewriter组件,即Intelligencia.UrlRewriter.dll,在IIS上来实现伪静态功能。

首先,打开IIS6.0,右键点站点,选择“属性”,再选择“主目录”,再点“配置”,在里面找到“应用程序设置”中的映射,把解析.aspx后缀的组件地址找到。
在Microsoft .NET Framework v1.1版本中的地址是C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\aspnet_isapi.dll,其它版本应该是就是v后面的版本号不同而已。

得到这个地址后,再新建一个映射。其中可执行文件,就填上面找出来的那个aspx文件的映射地址,然后“扩展名”填“.html”或“.htm”,可以看你的喜好。动作写全部动作,“确认文件是否存在”这个不勾选。

接下来,就是IIS站点的程序文件的中的web.config配置文件里面,来进行具体的设置。

总的来说,web.config文件中关于伪静态的设置分为三部分。
1、在configSections中设置一个rewriter段。
2、包含一个UrlRewriter的rewrite模块。
3、在<rewriter>段里面配置具体的伪静态规则。

另外,在配置文件时要注意两点。
1.参数用()括起来,使用 $1 来获得参数。
2.多个参数的时候使用&amp;分割。

<?xml version="1.0"?>
<configuration>
   <configSections>
       <section name="rewriter" requirePermission="false" type="Intelligencia.UrlRewriter.Configuration.RewriterConfigurationSectionHandler, Intelligencia.UrlRewriter"/>
   </configSections>
   <system.web>
       <httpModules>
           <add type="Intelligencia.UrlRewriter.RewriterHttpModule, Intelligencia.UrlRewriter" name="UrlRewriter"/>
        </httpModules>
   </system.web>
   <rewriter>
       <!--首页,把default.aspx伪装成default.html-->
       <rewrite url="~/default.html$" to="~/default.aspx" processing="stop"/>
       <!--文章列表页,第一个分类列表首页,第二是分类列表的分页-->
       <rewrite url="~/news/list-([A-Za-z0-9-]*).html$" to="~/NewsList.aspx?typeUrl=$1" processing="stop"/>
       <rewrite url="~/news/list-([A-Za-z0-9-]*)-([0-9]*).html$" to="~/NewsList.aspx?typeUrl=$1&amp;page=$2" processing="stop"/>
       <!--文章内容页-->
       <rewrite url="~/news/([A-Za-z0-9-]*).html$" to="~/NewsDetail.aspx?url=$1" processing="stop"/>
   </rewriter>
</configuration>


最后,记得把Intelligencia.UrlRewriter.dll添加到站点程序文件的bin目录中,不然,系统会因为找不到这个dll而导致rewrite失败。

 

要饭二维码

洪哥写文章很苦逼,如果本文对您略有帮助,可以扫描下方二维码支持洪哥!金额随意,先行谢过!大家的支持是我前进的动力!

文章的版权


如果您在服务器运维、网络管理、网站或系统开发过程有需要提供收费服务,请加QQ:8771947!十年运维经验,帮您省钱、让您放心!
亲,如果有需要,先存起来,方便以后再看啊!加入收藏夹的话,按Ctrl+D

« ASP.NET连接Access数据库 asp.net排错过程 »