无效的,这里是我的网址请求URL是在IIS 7
有在URL中的一切都被加密无效的字符。仍在收到
错误的请求 - 无效的URL HTTP错误400.请求URL无效。
我知道URL是相当长的,我能够加入,以解决我的卡西尼这个问题该 的httpRuntime maxUrlLength =“512”
在web.config然而,在IIS7即使玩弄requestfiltering maxurl和maxquerystring值我一直无法解决这个问题。
这是一个asp.net mvc 3应用程序。
无效的,这里是我的网址请求URL是在IIS 7
有在URL中的一切都被加密无效的字符。仍在收到
错误的请求 - 无效的URL HTTP错误400.请求URL无效。
我知道URL是相当长的,我能够加入,以解决我的卡西尼这个问题该 的httpRuntime maxUrlLength =“512”
在web.config然而,在IIS7即使玩弄requestfiltering maxurl和maxquerystring值我一直无法解决这个问题。
这是一个asp.net mvc 3应用程序。
你的问题是你没有使用查询字符串,而是一个路径。路径的最大长度为255.
这一个是对子孙后代和跟踪我自己的问题。然而,在另一个答案中已经说过,不是很明确。
我在我的问题上遇到了同样的问题。答案当然是将长URL段转换为查询字符串。更容易处理。
但问题是,HTTP.sys甚至不会让请求通过,因为URL的一部分超过了260个左右的字符。但是,我们仍然不得不支持它。
您可以在注册表中更改该设置。一旦你重新启动,该网址将工作。
注册表:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\HTTP\Parameters]
"UrlSegmentMaxLength"=dword:00000400
这将有效地设定段长度为1024。
***这***是***真*** **解决方案**!像魅力一样工作(Win8,IIS 8) –
这个明确地在Windows Server 2012上工作。唯一的区别是密钥不存在,所以它需要被添加... – vidriduch
@vidriduch是的,它需要被创建。像大多数注册表设置一样,如果密钥不存在,则将应用默认值。这里默认是260. :) –
您是否尝试与[' '](HTTP打:// WWW .iis.net/ConfigReference/system.webServer /安全/的requestFiltering/requestLimits)?我知道这是来自IIS7的一两个版本,但可能会有一些冲突。 –
是的,我已经在system.webserver下添加了这个requestLimits maxUrl =“512” – Qudoos