C# 潜在危险的请求。从具有有效URL的客户端(?)检测到路径值

C# 潜在危险的请求。从具有有效URL的客户端(?)检测到路径值,c#,asp.net-mvc-4,.net-4.0,iis-7.5,urlencode,C#,Asp.net Mvc 4,.net 4.0,Iis 7.5,Urlencode,我有一个ASP.NET MVC 4 Web应用程序在IIS 7.5上运行了几个星期,我注意到最近我收到了很多以下错误:System.Web.HttpException(0x80004005):一个潜在的危险请求。从客户端检测到路径值(?)。 在System.Web.HttpRequest.validateInputFrequeryByConfig()中 位于System.Web.HttpApplication.PipelineStepManager.ValidateHelper(HttpCont

我有一个ASP.NET MVC 4 Web应用程序在IIS 7.5上运行了几个星期,我注意到最近我收到了很多以下错误:
System.Web.HttpException(0x80004005):一个潜在的危险请求。从客户端检测到路径值(?)。
在System.Web.HttpRequest.validateInputFrequeryByConfig()中
位于System.Web.HttpApplication.PipelineStepManager.ValidateHelper(HttpContext上下文)

我知道这个异常是由于URL路径包含非法字符引起的,但奇怪的是,在我的例子中,URL是有效的。下面是URL的一个示例:
www.mysite.com/myApp/bookTitle?chapter=12&page=278


但是,当我尝试任何报告的链接时,它们都工作正常,没有任何例外

通过查看错误日志,我注意到查询字符串没有显示为query\u string变量的一部分,但它与路径的其余部分一起包含在path\u INFO变量中,该变量如下所示:
/myApp/bookTitle?chapter=12&page=278
。 因此,似乎没有将(?)识别为路径和查询之间的分隔符(可能是因为某种URL编码),但我不确定如何修复此问题


任何帮助都将不胜感激。

当ASP.NET收到带有编码为“%3F”的“?”字符的请求时,它会给出此错误消息。同时,它将“%3F”解码为请求[“PATH_INFO”]或Request.PathInfo变量中的“?”字符

如果查看Request[“HTTP_URL”]或Request.URL.originalstring,您可能会看到不同的内容。

请确保单个代码: 我也有同样的错误。 下面是我的正确代码:


titleNew=string.Format(“{1}”,idx,resource.Title)

可能重复?@Marijn的可能重复情况并非如此,因为我在URL路径中不包含任何特殊字符。是什么用户代理导致了这些错误?我们很少收到蜘蛛和爬虫的补充,比如百度。