我在IHttpModule
中使用RewritePath()来“路由”到子网页应用程序,就像在这个IIS布局中一样:
例如,当出现 / root / bleh 请求时, root 应用程序中的HTTP模块会重写 / root / obw <的路径/ strong>希望 obw 应用程序能够接管。
除了波浪号(〜)无法正确解析之外,这大部分都有效:
在重写后,代字号运算符会解析为 root Web应用,而不是 obw Web应用。这似乎是RewritePath()
的 rebaseClientPath 参数要考虑的事情,但改变该参数似乎没有任何区别。
如何在重写URL时正确解析波浪号(〜)运算符?
答案 0 :(得分:3)
这不起作用,因为RewritePath不是为了向其他应用程序发送请求而设计的。你说它“主要起作用”,但实际上它并没有按你的想法行事,而是在同一个应用程序中处理重写的请求。这就是为什么〜不解析子应用程序。
有很多事情也行不通。 e.g。
换句话说,在RewritePath的上下文中,它只是将obw视为一个普通的子文件夹而不是特殊的。
作为替代方案,您可以考虑使用不会出现此问题的IIS URL Rewriter module。