首先,最容易找到的是web.config下面配置:html
<!--maxRequestLength=50MB--> <httpRuntime targetFramework="4.5.2" maxRequestLength="51200"/>
這麼設置會將請求的尺寸從默認4MB(4096KB)提高到50MB(51200KB)。web
可是,若是隻是這麼設置的話,你會發現你的最大上傳尺寸會中止在28.6MB,更大的文件上傳,將返回404.13,表示內容長度過大。服務器
緣由在於IIS的默認設置,限定了maxAllowedContentLength的值。app
<element name="requestLimits"><attribute name="maxAllowedContentLength" type="uint" defaultValue="30000000" />
該值在IIS_Schema.xml中設置。(將影響整個計算機)ide
IISExpress:IISExpress運行路徑下,C:\Program Files (x86)\IIS Express\config\schema\IIS_schema.xml
IIS七、8:C:\Windows\System32\inetsrv\config\schema\IIS_schema.xmlui
若是修改了這個值沒有生效,兩種可能,一種是當前運行的IISExpress/IIS沒有關閉/重啓。一種是web.config中有額外的配置(以下文所述)。spa
然而爲了不老是去修改全局的值,影響到同一臺服務器上的其餘web站點,咱們還能夠在web.config中進行配置。.net
<system.webServer> <!-- IISExpress:C:\Users\UserName\Documents\IISExpress\config\applicationHost.config IIS七、8:C:\Windows\System32\inetsrv\config\applicationHost.config <section name="requestFiltering" overrideModeDefault="Allow" /> overrideModeDefault值設置成Allow的時候,本配置節纔會生效。 也能夠在IIS_Schema.xml中設置。(將影響整個計算機) IISExpress:IISExpress運行路徑下,C:\Program Files (x86)\IIS Express\config\schema\IIS_schema.xml IIS七、8:C:\Windows\System32\inetsrv\config\schema\IIS_schema.xml 修改defaultValue="30000000"(28.6MB)爲須要的值。 <element name="requestLimits"><attribute name="maxAllowedContentLength" type="uint" defaultValue="30000000" /> --> <security> <requestFiltering> <!--maxAllowedContentLength=100MB--> <requestLimits maxAllowedContentLength="104857600"></requestLimits> </requestFiltering> </security>
爲了使該內容生效,須要配置「容許繼承」,在applicationHost.config中搜索<section name="requestFiltering" overrideModeDefault="Allow" />中的關鍵字,確保這個值爲Allow便可。code
IISExpress:C:\Users\UserName\Documents\IISExpress\config\applicationHost.config
IIS七、8:C:\Windows\System32\inetsrv\config\applicationHost.configserver
參考資料:
http://www.iis.net/configreference/system.webserver/security/requestfiltering/requestlimits
http://www.cnblogs.com/henryhappier/archive/2010/09/20/1832098.html
https://msdn.microsoft.com/en-us/library/ms689462(v=vs.90).aspx