我的团队正在从ASP.NET 3.5升级到ASP.NET 4.0。我们目前正在使用Helicon ISAPI重写将http://localhost/<account-name>/default.aspx映射到http://localhost/<virtual-directory>/default.aspx?AccountName=<account-name>,其中<account-name>是一个查询字符串变量,而<virtual-directory> (自然)是一个虚拟目录。
在升级之前,代字号(~)解析为http://localhost/<account-name>/... (我希望它这样做),升级之后,代字号解析为http://localhost/<virtual-directory>/...,这会导致错误,因为<account-name>查询字符串是必需的。
我希望避免走上用相对路径替换所有内容的老路,因为我们的系统中有几个功能使用整个URL,而不仅仅是相对路径。
我在Windows7、ASP.NET 4.0的Visual Studio2010和64位Helicon ISAPI重写中使用了IIS7。如果我切换回IIS3.5版本,它仍然可以正常工作(这让我相信ASP.NET没有任何变化,除非它在4.0应用程序池中--当我在3.5和4.0之间来回切换时,我必须在IIS3.5和4.0之间更改应用程序池)。
有什么想法吗?提前感谢!
发布于 2010-06-15 04:39:07
IIS7有一个不错的http重定向支持。因此您可能不再需要使用ISAPI筛选器
http://technet.microsoft.com/en-us/library/cc732969(WS.10).aspx
使用ISAPI的另一种方法是使用HTTP模块重定向。
http://weblogs.asp.net/fmarguerie/archive/2004/11/18/265719.aspx
https://stackoverflow.com/questions/3040701
复制相似问题