HTTP错误404.15未找到
问题描述:
请求过滤模块被配置为拒绝查询字符串过长的请求。HTTP错误404.15未找到
我有上面的错误,我一直试图几乎一切,但没有运气
我的项目是MVC4上的Visual Studio 2013
事情我已经确定是正确和审判。
- 对于[AllowAnonymous] Attr,我的类没有[Authorize] Attr。
- 我在配置文件中
- 我已经加入 添加maxQueryStringLength = “32768” maxUrlLength = “65536” 到 - >
我有[使用AllowAnonymous] ATTR在我的日志在我的控制器操作。
我在调试模式下运行应用程序或在Visual Studio上没有调试模式时没有问题。
这里是我的溃败配置 routes.MapRoute( 名称: “默认”, 网址: “{控制器}/{行动}/{ID}”, 默认:新{控制器= “家”, action =“Index”,id = UrlParameter.Optional} );
这是我的Web服务器
答
上获得正如错误消息告诉您
请求筛选模块被配置为拒绝请求错误查询字符串太长。
在截图中,您可以清楚地看到returnUrl
参数很大。
所以有到解决方案
清除您
returnUrl
参数在你的控制器方法[HttpPost] Login();
以下内容添加到您的
web.config
:
的web.config
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxQueryString="*"/> <!-- Replace * with any number, which is required -->
</requestFiltering>
</security>
</system.webServer>
在你的情况去明确与解决方案1.它只是在你的代码中的错误,容易固定而不触及IIS或其他配置文件。
有关请求查询字符串限制的更多信息,请参见this post。
谢谢您的回复。我已经添加了的requestFiltering> 到的Web.config但我正在另一个错误 此请求的查询字符串长度超出了配置的maxQueryStringLength值。 –
Frank
@Frank为什么?在你的控制器中修复代码会简单得多 – Smartis
你会如何解决这个问题?谢谢@Smartis – Frank