[英]IIS reverse proxy with asp.net MVC site
设定:
-Asp.net MVC网站(siteA),具有在global.ascx中实现的application_error处理程序,并且在web.config中只有一个规则(反向代理重写规则)。
-IIS反向代理设置,其中siteA的/ sub目录指向siteB域。
-IIS重写模块已移至siteA的IIS模块列表的顶部。
问题:
反向代理配置可在testsiteA上使用,该站点中的IIS文件夹中没有任何内容,但web.config中的iis重写规则除外。 没有其他文件夹,文件等。此testsiteA可以正常工作,因为重写规则可以按预期进行。 但是,当我将相同的规则应用于具有asp.net MVC网站托管的真实站点siteA时,将永远不会处理重写规则。 而是在global.ascx中到达application_error处理程序,并且不处理URL重写规则。 我试图做Response.End(),清除服务器错误,基本的“返回”; 语句结束执行,所有操作都在application_error处理程序中,但没有一个起作用。
如何获得IIS或asp.net管道来处理URL重写作为最高优先级?
添加一些日志记录后(我无法获得错误处理程序以调试模式调用),我发现我们的控制器IoC无法解析子目录路径(我还从原来的磁盘中将其删除了)。 要解决此问题并处理URL重写,我只需添加一个
route.IgnoreRoute(“ subdirectory / { } pathInfo }”);
到RouteConfig.cs。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.