asp.net – 使用ARR的IIS反向代理与目录级别有问题
我正在设置IIS 7.5来为我的站点的子目录执行反向代理.
这是web.config url-rewrite: <clear /> <rule name="Reverse Proxy to Community" stopProcessing="true"> <match url="^community/qa/(.*)" /> <action type="Rewrite" url="http://xxx.xxx.xxx.xxx/{R:1}" logRewrittenUrl="true" /> </rule> ip地址指向带有apache和django站点的联网linux盒子. 我想要的是 怎么了 所以它似乎适用于从起点开始的2个子目录的所有URL. 这对我来说似乎很奇怪,我无法弄明白. 在此先感谢您的帮助. 解决方法
我很确定在你的情况下问题是在UrlRoutingModule设置中.如果您查看Ordered View中的IIS模块设置,您将看到UrlRoutingModule放置得更高,然后放置Rewrite和ApplicationRequestRouting模块.这意味着,如果您的应用程序中有ASP.NET MVC的Route-setup.此设置将影响服务器拦截它们并将它们转发给MVC-Route-Handler的请求,而不允许反向代理执行它的工作.例如,如果您有这样的常见路由设置:
routes.MapRoute( "Default",// Route name "{controller}/{action}/{id}",// URL with parameters new { controller = "Home",action = "Index",id = UrlParameter.Optional } // Parameter defaults ); 在你的情况下/ community / qa /和/ community / qa / questions /不起作用,因为它会匹配给定的Url模式,并且会被解释为: / community / qa / —> Controller =“community”,Action =“qa” / community / qa / questions / —> Controller =“community”,Action =“qa”,参数:Id =“questions” 如果你没有这样的控制器和动作,你将得到Http 404 Not Found. / community / qa / questions / ask /和/ community / qa / questions / unanswered /会起作用,因为它们与您系统中的任何UrlRouting模式都不匹配. 如此简单的解决方案是添加您的UrlRouting配置(当Web应用程序启动时)忽略您的网址规则: routes.IgnoreRoute("community/qa/{*pathInfo}"); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- Forms身份验证应用程序中的ASP.NET Web服务
- asp.net core EF code first
- 在ASP.NET MVC(视图)中包含WebForms?
- asp.net-mvc – ASP.NET MVC – 正确使用View Model和Comma
- asp.net-mvc-4 – 获取上下文是不可构建的.添加一个默认的构
- asp.net-mvc – 在IIS7上部署MVC应用程序的最佳实践
- 如何阻止asp.net上传发布的文件
- asp.net-mvc – 基于MVC角色的路由
- ASP.NET Web API为单个路由定制IHttpControllerSelector
- .NET Framework 3.5中有哪些有用的新ASP.NET功能?
- asp.net – 如何禁用.NET事件日志警告?
- 如何将旧版ASP应用程序转换为ASP.NET?
- asp.net – 为什么visual studio给我类型没有为我
- asp.net-mvc – 401未授权:访问被拒绝由于无效的
- asp.net-mvc – ASP.NET MVC 4 – 使用子操作进行
- 缩小ASP.Net MVC应用程序的HTML输出
- asp.net – 如何使用queryString将值从一个asp页
- asp.net-mvc – 如何使用razor语法转换为对象
- asp.net – AspNetCore.Mvc与AspNetCore.Mvc.Cor
- asp.net-mvc – asp.net mvc windows authentica