日期:2014-05-18  浏览次数:20593 次

问一个URL重写的问题
我在.net中使用URLRewriter进行重写没有问题
 <add virtualUrl="~/chuo/([a-zA-Z]*)/page=(\d+)" destinationUrl="~/chuo/hotelfl.aspx?type=$1&amp;PageIndex=$2" />
可是架在IIS就不行了,有没有什么需要配置的地方,

另外还有一个问题就是重写的页面再次重新加载以后就没用了,比如说我用Dropdownlist作一个筛选,
启用了页面回发.....URL重写就没用了

------解决方案--------------------
IIS要配置映射。右键单击你的目录->属性->(右下边的)配置->添加 
可执行文件 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll
扩展名 你重写成的扩展名如.html 无扩展名重写 填.*
注意:去掉检查文件是否存在的复选框



------解决方案--------------------
UrlRewriter重写地址的POSTBACK后,地址还原的解决方法

例子:a.aspx?id=1重写为a.html?id=1
当触发a.aspx的postback事件时,例如点击按钮后,地址又变回为a.aspx?id=1
解决方法如下:
在a.aspx页面进行如下注册:
<%@ Register TagPrefix="url" Namespace="Intelligencia.UrlRewriter" Assembly="Intelligencia.UrlRewriter" %>

然后,把<asp:form runat="server">替换为<url:form runat="server>
 
这个方法是在google的urlrewriter group中找到的。
参见:http://groups.google.com/group/UrlRewriter/browse_thread/thread/9eb59d8534ed0ec3/839990b919648ed9?lnk=gst&q=postback&rnum=2#839990b919648ed9
------解决方案--------------------
无扩展名的,要在下面的地方,

做通配符映射

不知道什么是通配符映射可以搜索一下或者到http://www.svnhost.cn找找看
------解决方案--------------------
关注下
------解决方案--------------------
IIS中如果是根目录的话,去掉chuo
dropdownlist不用change事件,使用传参形式重新请求该页,也可以使用iframe,也可以改变form.action
------解决方案--------------------
探讨
IIS要配置映射。右键单击你的目录->属性->(右下边的)配置->添加
可执行文件 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll
扩展名 你重写成的扩展名如.html 无扩展名重写 填.*
注意:去掉检查文件是否存在的复选框

------解决方案--------------------
http://www.cnblogs.com/yurichou/archive/2007/01/09/616001.html
http://www.cnblogs.com/mouhong-lin/articles/1262965.html
------解决方案--------------------
你用的是UrlRewritingNet吧。
应该不需要做什么设置啊。

对于postback的问题,有人说要去掉aspx中的baseurl设置

这里有UrlRewritingNet的文档:
http://www.urlrewriting.net/160/en/documentation.html
------解决方案--------------------
up