' requestValidationMode = 2.0'使网址区分大小写

时间:2016-03-17 07:46:15

标签: asp.net-mvc-4 httpruntime requestvalidationmode

我正在开发一些asp.net MVC4项目(iis 7)。防止" Potentialy危险请求"消息我在web.config文件中添加了该行 " httpRuntime requestValidationMode =" 2.0" />" 它确实阻止了消息,但发生了另一件事 - 网址突然变得具有案例感。 当我删除这一行时,url返回不区分大小写,但消息又回来了。

有人知道我怎样才能享受这两种优势?

非常感谢!

编辑: 好吧,我发现不同之处在于,当我添加此行时,auth cookie(fedAuth)是不同的,并且由于某种原因,新cookie具有过期日期和区分大小写。 仍然无法理解差异的原因以及如何防止它。

1 个答案:

答案 0 :(得分:0)

我已经搜索了一下IIS上的MVC如何能够区分大小写,看起来这几乎是not even supposed to be supported。您可能有一些错误的自定义代码。

这可能是您的路由配置中的一些hack / bad logic(默认情况下位于App_Start/RouteConfig.cs)。或者您的操作过滤器中的一些错误代码,Controller.OnActionExecuting会覆盖,甚至直接在您的操作实施中。

您可能还安装了URL Rewrite并且设置不当。查看一些示例here