RunninganASP.NETMVCApplicationBehindaProxywithdifferentRootRelativePaths应用中遇到。例如,我们的IIS应用程序根路径是http://server/MyApp/,这意味着所有使用应用程序根目录的URL(“~/”,Url.Action(“MyAction”,“MyController”))都解析为“/MyApp”现在我们在代理服务器后面运行,它转发所有请求,但要求您通过以下URL访问应用程序:“/Secury/Proxy/RubbishUrl/MyApp”由于代理URL仅在客户端可用,我想of创建一个以路径为前缀的cookie,并将其插入服务器上每个生成的URL之前。现在的问题是,修改解析/发送给客户端的每个URL(资源、控制器操作、图像等)的代码的最佳位置是什么?应用程序中的每个路由都使用MVC方法(Url.Content、Url.Action等)进行解析。更新:不再积极寻找答案(尽管仍然对正确的解决方案感兴趣)大多数时候代理会进行自己的URL转换,但在这种情况下,代理服务器会忽略以JSON传输的路径并使用Dosomethingwiththem。我当前的“解决方案”是不传递JSON中的路径,而是:这种方法实际上是IMO传递URL的一种非常“干净”的方式。您可以创建自己的asp.netmvc控制器工厂,它根据请求的url确定哪个控制器和操作将响应。查看此url以获得有关如何执行此操作的好博客文章-http://nayyeri.net/custom-controller-factory-in-asp-net-mvc。以上是C#学习教程:RunningASP.NETMVCapplicationsbehindproxywithdifferentrootrelativepaths。如果对你有用,需要了解更多C#学习教程,希望大家多加关注——本文来自网络收藏,不代表立场,如涉及侵权,请点击右边联系管理员删除。如需转载请注明出处:
