如何手工映射IIS7或IIS7.5的.NET程序伪静态为.shtml
    文章作者:恒爱网络 阅读次数:6512 发布时间:2016-11-12

    前提是服务器已经安装了URLRewriter组件,如果没有,需要去下载 http://download.microsoft.com/download/0/4/6/0463611e-a3f9-490d-a08c-877a83b797cf/MSDNURLRewriting.msi

    其次ASP.NET程序已经具有 URLRewriter功能,如果没有,那就要改造程序了。也就是在网站项目中添加URLRewriter程序集的引用。


    然后还要在web.config文件里增加伪静态功能,大致如下:

    1。在与节点中间加入如下配置:


    2。 在与
    之间加入
          

    3。在与加入


    4。配置伪静态的语法:在与之间加入
    节点。在与之间加入伪静态规则:


          
          
            ~/xxxx/view(.[\d]*)\.html
            ~/xxxx/view.aspx?id=$1
          

     
     
          
            ~/yyyy/(.[\d]*)/view.html
            ~/yyyy/view.aspx?id=$1
          





    ---------------------------如果程序以具有伪静态功能请忽略以上-------------------------------- 


    手工添加映射步骤如下:


    先双击IIS管理器中的具体站点,然后右侧找到【处理程序映射】,打开它,然后在新窗口右侧的操作栏目下选择如下操作。

    1,【添加脚本映射】-路径为:*.html.可执行文件为:C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll 注意:如果你的网站是2.0。可执行文件为:C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll (具体根据你空间使用的.NET版本以及系统是Bit32还是Bit64来选择) 。名称:任意,比如:shtml


    2, 【添加通配符脚本映射】 请求路径为*。可执行文件为:C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll (具体根据你空间使用的.NET版本以及系统是Bit32还是Bit64来选择),名称任意,比如:aspnet

    3,【托管处理程序映射】(路径:*  可执行文件:System.Web.UI.PageHandlerFactory 名称 任意 比如Html-Integrate)

    4, 双击website站点切换到站点功能视图。然后双击模块,打开窗口之后在右侧的操作栏目下面,单击【添加托管模块】-》名称:任意 如aspnet  类型:URLRewriter.ModuleRewriter 并且 把【仅针对向asp.net 应用程序或托管处理程序发出请求调用】前面的选项 勾上。(记住一定要勾上)。

    5 ,双击iis7.0或7.5的应用程序池。在应用程序池列表中找到具体网站的应用程序池。双击打开之后。将aspnet应用程序池的【托管管道模式】从默认的“集成”改为“经典”模式。