這就讓我懷疑是否因為上傳的檔案太大,直接被 IIS 擋掉了。但我實際檢查 web.config,卻明白寫著:
<system.web>
<!--設定最大檔案傳輸流量,單位:KB-->
<httpRuntime maxRequestLength="1000000"/>
</system.web>
<!--設定最大檔案傳輸流量,單位:KB-->
<httpRuntime maxRequestLength="1000000"/>
</system.web>
這不是很諷刺嗎?可以上傳約 1G 呢。
但當我看了 https://forums.iis.net/t/1150009.aspx 論壇後,終於了解了。
在 IIS7 以後,不能僅僅在
httpRuntime
設定
maxRequestLength 而已,還要加上
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="1000000000" />
</requestFiltering>
</security>
</system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="1000000000" />
</requestFiltering>
</security>
</system.webServer>
此外還要注意,
maxAllowedContentLength 的單位是 Byte,也就是 1M =1*1024*1024
跟
maxRequestLength 預設是 KB 不一樣
Ref: