asp.net实现伪静态

  一、配置应用程序

  1、下载URLRewrite.dll,程序中添加引用

 

  2、在web.config中配置

 

 
<configuration>
 <configSections> <section name="RewriterConfig" requirePermission="false" type="URLRewriter.Config.RewriterConfigSerializerSectionHandler, URLRewriter" /> </configSections> <RewriterConfig> <Rules> <RewriterRule><!--一个参数-> <LookFor>~/cn/ss_(.[\d]*)\.html</LookFor> <SendTo>~/cn/news.aspx?id=$1</SendTo> </RewriterRule> <RewriterRule><!--传两个参数的--> <LookFor>~/cn/ss_(.[\d]*)0(.[\w]*).html</LookFor> <!--(.[\d]*)(.[\w]*).html 或者 ss_,(.[0-9]*),(.[0-9]*)\.html--> <SendTo><![CDATA[~/cn/news.aspx?id=$1&sid=$2]]></SendTo> </RewriterRule> <RewriterRule><!--三个参数--> <LookFor>~/cn/ss_(.[\d]*)0(.[\w]*)0(.[\w]*).html</LookFor> <SendTo><![CDATA[~/ZH-CN/news.aspx?id=$1&sid=$2&n_id=$3]]></SendTo> </RewriterRule> <RewriterRule> <LookFor>~/dfsaddf/index(\d*)\.html</LookFor> <SendTo>~/Favorites_Page.aspx</SendTo> </RewriterRule> </Rules> </RewriterConfig> </configuration> <system.web> <httpHandlers> <add verb="*" path="*.aspx" type="URLRewriter.RewriterFactoryHandler, URLRewriter" /> <add verb="*" path="*.html" type="URLRewriter.RewriterFactoryHandler, URLRewriter" /> </httpHandlers> </system.web>

 

  二、配置IIS

  

  1. 首先新建一个应用程序池,名称任意,本人是:demo,托管管道模式先暂时设置为集成模式,等下面的一系列设置完成之后再设置成经典模式;(如图1,图1-1)【创建的时候不用去选择版本和模式,默认即可】

     
  2.  署好站点,并将此站点的应用程序池设置为demo;
     
  3.  选中站点,切换到功能试图,找到 "IIS(服务器组件)"-> "处理程序映射",双击之后,在打开窗口右侧的操作栏目下做如下设置:(图3)
  4. 右边"添加脚本映射":请求路径 .html ,可执行文件选择C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll ,如果是4.0,则为C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll,名称随意,点击是;(如图4)

    (注意:有人问为什么会有2个文件夹,因为是64位系统,如果你的系统是32位的。请选择Framework,如果64位,请选Framework64。这个关键到后面的伪静态问题,慎重!!)

     

     
  5.  "添加通配符脚本映射":请求路径 * ,可执行文件为:C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,名称随意;(如图5)(不同系统不同文件夹选择!)
  6.  "添加托管处理程序":请求路径 * ,可执行文件:System.Web.UI.PageHandlerFactory,名称随意;应用程序池必须设置为集成模式才有

    打开站点切换到功能试图,找到 "IIS(服务器组件)"->"模块",双击之后,在打开窗口右侧的操作栏目中,点击"添加托管模块",名称随意,类型URLRewriter.ModuleRewriter,并且把"仅针对向asp.net 应用程序或托管处理程序发出请求调用" 选中;(如图6)

     

  7.  最后,找到我们第一步建立的应用程序池test,将托管管道模式设置为经典模式。(如图7)

    以上完成之后,即可实现IIS 7.5下的伪静态操作。

     

     

     

 

注意事项

  • 如果你的系统是32位的。请选择Framework,如果64位,请选Framework64。这个关键到后面的伪静态问题,慎重!!

posted on 2017-08-15 21:17  神奇猪的博客  阅读(889)  评论(0)    收藏  举报