我有一个遗留代码问题,需要我支持随机url,就好像它们是对主页的请求一样。某些URL中包含字符,会生成错误“从客户端(&)”检测到潜在危险的Request.Path值。该网站使用ASP.Net MVC 3(使用C#)编写,并且正在IIS 7.5上运行。获取“从客户端(&)检测到潜在危险的Request.Path值”
下面是一个例子网址...
http://mywebsite.com/Test123/This_&_That
以下是我有我的包罗万象的路线设置(我有其他途径捕获特定网页)...
routes.MapRoute(
"Default", // Route name
"{garb1}/{garb2}", // URL with parameters
new { controller = "Website", action = "Home", garb1 = UrlParameter.Optional, garb2 = UrlParameter.Optional } // Parameter defaults
);
我已将以下内容添加到我的web.config文件中...
<configuration>
<system.web>
<pages validateRequest="false" />
<httpRuntime requestValidationMode="2.0" />
</system.web>
<configuration>
我也已将ValidateInput属性添加到sh应该赶上网址...
public class WebsiteController : Controller
{
[ValidateInput(false)]
public ActionResult Home()
{
return View();
}
}
但我仍然收到错误。任何想法为什么?我错过了什么?现在我只是在我的本地开发服务器上运行(我还没有在生产环境中尝试过这些修复)。
有一个设置,以允许某些字符,我会很快检查当回到电脑......但你可以urlencode你的URL? – 2011-05-17 03:23:47
可能的重复[从客户端(\ *)检测到潜在危险的Request.Path值](http://stackoverflow.com/questions/5967103/a-potentially-dangerous-request-path-value-was-was-detected -from-the-client) – Marijn 2014-03-11 16:10:40
我不知道该网站在什么原因在内部尝试重定向,它创建了一个像“http:// localhost /:// localhost/myWebsiteName /”这样的URL,它给了我相同的错误。我不知道为什么ASP.net管道认为它是一个危险的请求URL。 – RBT 2016-09-28 08:19:59