無效的,這裏是我的網址請求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