繁体   English   中英

带有ASP.NET MVC站点的IIS反向代理

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM