[IIS][ASP.NET]設定Querystring Length

[IIS][ASP.NET]設定Querystring Length

今早User反應系統無法下載excel檔案,專案下載方式我都是透過jQuery File Download 來處理,

jQuery File Download 是使用querystring方式將前端json傳回Server Side (使用 GET),

經追查發現原來是querystring過長問題(其實應該要避免過長的URL),

解決該問題方法很多種,但我為了快速解掉該問題(其實是懶的改code),想說直接修改IIS和web.config,下面紀錄一下。

image

 

錯誤原因

image

 

 

設定IIS WebSite的要求篩選

image

image

修改URL長度和查詢字串上限。

 

web.config修改如下

<httpRuntime executionTimeout="180" maxQueryStringLength="512000" maxUrlLength="512000" />

 

 

測試結果:

FireFox: OK

Chrome: OK

IE10: Error

(我看httpcode 回應200,但還是無法順利下載,我猜可能是受URL最大長度影響,雖然改了相關參數但還是無用,一時想不到方向)。

image

 

 

 

參考

Request Limits <requestLimits>

Maximum URL Size in HTTP GET Request

在 Internet Explorer 中 URL 最大長度為2,083 個字元