转自:http://www.cnblogs.com/luckly-hf/archive/2013/03/07/2947687.html

第一部: 
从如下地址中下载URLRewriter组件组件:

官方下载地址:http://download.microsoft.com/download/0/4/6/0463611e-a3f9-490d-a08c-877a83b797cf/MSDNURLRewriting.msi

第二部:在网站项目中添加URLRewriter程序集的引用。

第三部:配置webconfig文件:

注意事项:1、参数用()括起来,使用 $1 来获得参数。2、多个参数的时候使用&分割。

1。在<configuration>与</configuration>节点中间加入如下配置:

<configSections>
       <section name="RewriterConfig" type="URLRewriter.Config.RewriterConfigSerializerSectionHandler, URLRewriter" />
   </configSections>

2。 在<system.web>与</system.web> 之间加入

<httpHandlers>
          <add verb="*" path="*.aspx" type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
          <add verb="*" path="*.html" type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
 </httpHandlers>

或者

<system.web>                         
  <httpModules>                          
   <add type=”URLRewriter.ModuleRewriter, URLRewriter” name=”ModuleRewriter”/>                       
  </httpModules>                         
 </system.web>                                                                                   

  

3。配置伪静态的语法:在<configuration>与</configuration>之间加入<RewriterConfig> </RewriterConfig>节点。

在  <RewriterConfig>与</RewriterConfig>之间加入伪静态规则:      <Rules> <!–定义伪静态第一条规则开始–> <RewriterRule> <LookFor>~/xxxx/view(.[\d]*)\.html</LookFor> <SendTo>~/xxxx/view.aspx?id=$1</SendTo> </RewriterRule>   <!–定义伪静态第一条规则结束–> <!–定义伪静态第二条规则开始–> <RewriterRule> <LookFor>~/yyyy/(.[\d]*)/view.html</LookFor> <SendTo>~/yyyy/view.aspx?id=$1</SendTo> </RewriterRule>

例子如:

    <RewriterConfig>
<Rules>
<!--官网-->
<RewriterRule>
<LookFor>~/web/new/type-(.[0-9]*)\.html</LookFor>
<SendTo>~/web/new.aspx?id=$1</SendTo>
</RewriterRule>
<RewriterRule>
<LookFor>/index.html</LookFor>
<SendTo>/index.aspx</SendTo>
</RewriterRule>
<RewriterRule>
<LookFor>/aboutus/aboutusContent-(.*).html</LookFor>
<SendTo>/aboutus/aboutusContent.aspx?pageurl=$1</SendTo>
</RewriterRule>
<RewriterRule>
<LookFor>/shop/GiftList-(.*)-(.*).html</LookFor>
<SendTo>/shop/GiftList.aspx?nav=$1&amp;price=$2</SendTo>
</RewriterRule>
<RewriterRule>
<LookFor>/shop/list-(.*)-(.*)-(.*).html</LookFor>
<SendTo>/shop/list.aspx?nav=$1&amp;licno=$2&amp;orderby=$3</SendTo>
</RewriterRule>
<RewriterRule>
<LookFor>/shop/list-(.*)-(.*)-(.*)-(.*).html</LookFor>
<SendTo>/shop/list.aspx?nav=$1&amp;licno=$2&amp;orderby=$3&amp;price=$4</SendTo>
</RewriterRule>
</Rules>
</RewriterConfig>

或者

<RewriterConfig>
      <rewriter>                       
<rewrite   url="^(/.+(\.gif|\.png|\.jpg|\.ico|\.pdf|\.css|\.js)(\?.+)?)$"   to="$1" processing="stop" />       
<rewrite   url="~/lmh$" to="~/Users.aspx?user=lmh"   processing="stop" />       
<rewrite   url="~/tags/(.+)" to="~/tag/tagcloud.aspx?tag=$1"  processing="stop"/>        <rewrite   url="^~/mypage(\?.+)?$" to="~/index.htm$1"   processing="stop" />        <rewrite   url="~/article-([^-]+)-([^-]+)-([^-]+).html"    to="~/testurl/article.asp?id=$1&sid=$2&page=$3"  processing="stop"/>     
  <rewrite   url="^(.*)/(\?.+)?$" to="$1/index.htm$2?" />   
    </rewritr>
</RewriterConfig>

url是可以使用正则表达式的。比如上面的例子:

规则一:当发现文件类型为   .gif, .png,.jpg, .ico, .pdf, .css or .js时,停止rewrite

规则二:就是将/lmh重写到/Users.aspx?user=lmh,$在正则表达式中表示是串的结束,也就是说/lmhe是不会被重写到to后的地址的,如果把$去掉则可以

规则三:将tags/xxx重写为tag/tagcloud.aspx?Tag=xxx

规则四:当用户输入错误象mypagexxx形式的地址时,转到网站默认页面

规则五:设置用户网站的默认页面为index.htm

新添asp规则:将article.asp?id=13&sid=10&page=2通过伪静态转换成article-10-13-2.html格式来访问页面

第四部:配置IIS7.5 或IIS7.0

1.新建一个应用程序池:名称:任意如:aspnet;选择net 
FrameWork版本(如果你的网站时候2.0的话就选择2.0,我的是4.0)在此我选择Net FramWork v 4.030319. 
托管管道模式先暂时设置为集成模式。等下面的设置完成之后再将托管管道模式设置为经典模式。如果下面的设置完成之后不把应用程序设置为经典模式的话,伪静态的功能可以实现,但是页面的样式图片不能正常显示这是设置的关键。

2 新建一个网站 website ,将此站点的应用程序程序池设置为aspnet。

3 选中你的站点比如website ,并且切换到功能视图。双击【处理程序映射】在打开窗口右侧的操作栏目下做如下操作。

3.1,【添加脚本映射】-路径为:*.html.可执行文件为:C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll 
    注意:如果你的网站是2.0。可执行文件为:C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll 。名称:任意,比如:html.
   3.2, 【添加通配符脚本映射】 请求路径为*。可执行文件为:C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,名称任意,比如:aspnet.
   3.3,【托管处理程序映射】(路径:* 可执行文件:System.Web.UI.PageHandlerFactory 名称 任意 比如Html-Integrate)
   3.4, 双击website站点切换到站点功能视图。然后双击模块,打开窗口之后在右侧的操作栏目下面,单击【添加托管模块】-》名称:任意 如aspnet 类型:URLRewriter.ModuleRewriter 并且 把【仅针对向asp.net 应用程序 或托管处理程序发出请求调用】前面的选项 勾上。(记住一定要勾上)。
   3.5 最后一步:双击iis7.0或7.5的应用程序池。在应用程序池列表中找到【aspnet】应用程序池。双击打开之后。将aspnet应用程序池的【托管管道模式】设置为经典模式。

详细解说:https://www.iis.net/learn/extensions/url-rewrite-module/url-rewrite-module-configuration-reference

win7 IIS7.5配置伪静态的更多相关文章

  1. win7 iis7.5 配置错误解决办法

    win7 iis7.5 配置HTTP 错误 404.3 在初次使用IIS7的时候经常遇到的一个错误解决办法1: 找到Visual Studio命令提示工具,运行aspnet_regiis.exe -i ...

  2. iis7.5 配置伪静态

    1)首先新建一个应用程序池,名称任意,比如:nettest,托管管道模式先暂时设置为集成模式,等下面的一系列设置完成之后再设置成经典模式: 2)部署好站点,并将此站点的应用程序池设置为nettest; ...

  3. win7 iis7 ftp配置

    1.安装ftp服务器 开始菜单找到控制面板>在左侧找到打开或关闭windows功能点击 弹出如下对话框, 在弹出的对话框中找到Internet信息服务,如下 然后如上图所示,选中ftp服务器复选 ...

  4. Windows-Server-2008、IIS7.0环境下配置伪静态化

    在Windows-Server-2008.IIS7.0环境下配置伪静态化                首先,是IIS7.0的配置,由于Windows Server 2008操作系统默认的IIS版本为 ...

  5. C# mvc3 mvc4 伪静态及IIS7.5配置

    mvc3 mvc4路由配置 //单独路由 routes.MapRoute(    name: "XXX",    url: "Home/XXX.html/{id}&quo ...

  6. URL优化之IIS7如何开启伪静态

    iis7跟IIS6开启伪静态重写的方式不一样,iis6是在网站属性里面的ISAPI筛选器里面添加,但是iis7添加伪静态重写,需要下载一个url重写插件. II7/7.5用的是web.config配置 ...

  7. IIS 7.5 配置伪静态

    IIS 7.5 配置伪静态_win服务器_脚本之家 win7下IIS的安装和配置 图文教程详细出处参考:http://www.jb51.net/article/29787.htm http://blo ...

  8. ASP.NET MVC4通过UrlRewriter配置伪静态,支持html后缀

    参考文章: ASP.NET MVC4通过UrlRewriter配置伪静态 http://blog.csdn.net/just_shunjian/article/details/51132866 .NE ...

  9. 转发 win7+iis7.5+asp.net下 CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files 解决方案

    win7+iis7.5+asp.net下 CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NE ...

随机推荐

  1. iOS iOS9.0 的CoreLocation定位

    一.简介 iOS9.0如果当前处于前台授权状态,默认是不可以后台获取用户位置. 如果在前台授权下,让其能获取到后台定位,该怎么办 可以设置以下属性为YES,就可以继续获取后台位置,但是会出现蓝条 使用 ...

  2. jQuery删除节点和追加节点

    for (var i in checkedBoxIds) { var $td = $("#" + checkedBoxIds[i]).parent().parent().detac ...

  3. 使用mvn生成webapp失败,尚未找到原因

    执行命令: mvn archetype:create -DgroupId=com.jd.ads.test -DartifactId=testTools -DarchetypeArtifactId=ma ...

  4. CSS Float 以及相关布局模式

    float 取值 属性 值 描述   left 向左浮动   right 向右浮动   none 默认值   inherit 继承 看一个栗子 红色线框代表父元素 脱离文档流,其实也没有完全脱离,会被 ...

  5. EMC Documentum DQL整理(二)

    1.Get file extension SELECT dos_extension FROM dm_format WHERE name IN (SELECT a_content_type FROM d ...

  6. asp.net mvc 之旅—— 第一站 从简单的razor入手

    记得2011年mvc3刚出来的时候,我们就有幸将 mvc3 用在我们团购项目上,当时老大让我们用一个星期时间来熟悉mvc,幸好园子里面的老朋友DR 正在写mvc3系列,也恭喜这个系列文章被整理成专题供 ...

  7. 烂泥:puppet添加带密码的用户

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 前一篇文章,我们介绍了有关puppet3.7的安装与配置,这篇文章我们再来介绍下如何利用puppet添加带密码的用户. 要通过puppet添加带密码的用 ...

  8. iOS基于MBProgressHUD的二次封装,一行搞定,使用超简单

    MBProgressHUD的使用,临时总结了几款最常用的使用场景: 1.提示消息 用法: [YJProgressHUD showMessage:@"显示文字,1s隐藏" inVie ...

  9. cal 命令

    cal命令是linux里面查看日历的一个命令,效果如下: [root@localhost ~]# cal 十月 日 一 二 三 四 五 六 我们可以的很形象的从日历上看出今天是哪年,哪年的哪天,周几, ...

  10. 理解 OpenStack + Ceph (3):Ceph RBD 接口和工具 [Ceph RBD API and Tools]

    本系列文章会深入研究 Ceph 以及 Ceph 和 OpenStack 的集成: (1)安装和部署 (2)Ceph RBD 接口和工具 (3)Ceph 物理和逻辑结构 (4)Ceph 的基础数据结构 ...