用url重新一般都是使用URLRewriter库,基本上都是一些配置,在webconfig中

首先配置configuration节点

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

<system.web>节点下配置httpHandlers和httpModules,二者配置其一即可

httpModules配置

    <httpModules>
<add type="URLRewriter.ModuleRewriter, URLRewriter" name="ModuleRewriter" />
</httpModules>

httpHandlers配置

    <httpHandlers>
<add verb="*" path="/*/list/*" type="URLRewriter.RewriterFactoryHandler,URLRewriter" />
<add verb="*" path="/group/*" type="URLRewriter.RewriterFactoryHandler,URLRewriter" />
</httpHandlers>

<remove verb = "* " path = "*.asmx " />
    <add verb = "* " path = "* " type = "URLRewriter.RewriterFactoryHandler, URLRewriter" />
     <add verb = "* " path = "*.html " type =" URLRewriter.RewriterFactoryHandler, URLRewriter " />

<system.webServer>节点下添加

<handlers>
<add name="Rewriter" path="*" verb="*" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" resourceType="Unspecified" requireAccess="None"
preCondition="classicMode,runtimeVersionv4.0,bitness32" />
</handlers>

接下来就是写规则了。在webconfig的configuration内部的最底部添加RewriterConfig节点,并写规则

<!--url重写规则-->
<RewriterConfig>
<Rules>
<!--店铺-->
<RewriterRule>
<LookFor>~/(.*)/list/(.*)</LookFor>
<SendTo>~/group/itemlist.aspx?name=$1&amp;keyword=$2</SendTo>
</RewriterRule>
<RewriterRule>
<LookFor>~/group/(.*)</LookFor>
<SendTo>~/group/circle.aspx?name=$1</SendTo>
</RewriterRule>
</Rules>
</RewriterConfig>

这些基本上已经好了。但发布到iis上还需配置一些东西。即处理映射

选择你发布的网站。选择"处理程序映射"

然后:

选择路径:

C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll

保存即可。

用URLRewriter重写url的更多相关文章

  1. 利用URLRewriter重写url地址

    首先,当然是下载URLRewriter了 download.microsoft.com/download/0/4/6/0463611e-a3f9-490d-a08c-877a83b797cf/MSDN ...

  2. 在Apache中使用mod_rewrite模块重写URL

    如果有使用第三方框架做项目时,url路径是可以同过框架给的方法来设定的(如thinkphp),但如果使用原生php写的项目又想重写url,则可通过apache的一些设置来达到想要的效果. 在更改apa ...

  3. HttpContext.Current.RewritePath方法重写URL

    if (!IsPostBack) { //如果请求ID为空,则重写URL为:~/index.aspx?ID=shouji.115sou.com if (Request.QueryString[&quo ...

  4. 在js中获取query string 以及重写URL的函数

    函数用途:如标题.1. 从URL中解析出參数,2.重写URL中的參数值 例如以下代码所看到的.包括了測试.能够直接copy到浏览器中,输入測试地址:localhost:xxx?a=1&b=2& ...

  5. 【转载】ASP.NET MVC重写URL制作伪静态网页,URL地址以.html结尾

    在搜索引擎优化领域,静态网页对于SEO的优化有着很大的好处,因此很多人就想把自己的网站的一些网页做成伪静态.我们现在在网络上发现很多博客网站.论坛网站.CMS内容管理系统等都有使用伪静态这一种情况,伪 ...

  6. asp.net 重写URL方法和封装好的DLL

    .net 重写URL方法和封装好的DLL URL重写方法DLL(2.0)

  7. jsp重写url

    众所周知,使用java web编程出来的网站都是.jsp结尾的,而别人的网站都是以.html结尾的,那么这种效果是怎么实现的呢?就是这篇文章产生的原因,jsp重写url需要设计到第三方架包urlrew ...

  8. ASP.NET URLRewriter重写

    URLRewriter重写是微软官方出的第三方重写插件 下载地址:http://download.csdn.net/detail/ysn1314/5421587 下载后在项目中添加引用,然后再配置文件 ...

  9. apache重写URL时,排除静态资源

    THINKPHP项目部署的apache 上面时,如果为了隐藏入口文件配置了重写URL,会导致将静态资源的URL也解析成Controller/Method,导致触发模块不存在 所以在URL重写配置中,需 ...

随机推荐

  1. jcgrid

    1.jcgrid实现 <span class="JcGrid" id="MyGrid" listdata="Rds.List.UserList& ...

  2. A Method for the Construction of Minimum-Redundancy Codes

    A Method for the Construction of Minimum-Redundancy Codes http://compression.ru/download/articles/hu ...

  3. Xcode报错Xcode导入runtime框架函数参数没有提示或Too many arguments to function call, expected 0, have 2错误

    前言:在引入<objc/runtime.h> 与 <objc/message.h> 后,调用objc_msgSend(),会报如下错误: 报错原因: 从Xcode6之后,苹果不 ...

  4. winform窗体启动过程

    窗体启动执行顺序:FormShowFormPaintFormActivateFormResize 关闭窗体过程FormCloseFormDestroy 最小化再最大化:FormPaintFormRes ...

  5. es6 学习四 数组的学习

    1. Array.from() 语法: Array.from(arrayLike[, mapFn[, thisArg]]) arrayLike 类数组对象 mapFn 如果指定了该参数,新数组中的每个 ...

  6. 关于flexjson将json转为javabean的使用

    关于flexjson将json转为javabean的使用 import java.sql.Timestamp; import java.util.Date; import flexjson.JSOND ...

  7. 20180310 KindEditor 富文本编辑器

    问题: 如何判断富文本编辑器文本内容非空 错误的办法,采用js 对控件本身的txt ID 号抓取获取值,由于加载富文本编辑器时,界面的ID 已经经过了修改或者可以用转换来说,所以抓取是无效果的. 需要 ...

  8. python用%来处理字符串

    %s 可以字符串拼接 msg='i am %s my hobby is %s' % ('lhf','alex') print(msg) 执行结果: i am lhf my hobby is alex ...

  9. 多线程——newCachedThreadPool线程池

    newCachedThreadPool线程池: 理解: 1).newCachedThreadPool可以创建一个无限大小的线程池(实际上是一个可缓存线程池).      可以通过Executors的静 ...

  10. [js]js的表单验证

    http://uule.iteye.com/blog/2183622 表单验证类 <form class="form" method="post" id= ...