iis上傳文件大小限制
『壹』 如何突破XP的IIS上傳文件大小限制
本文以win2012下的IIS8.0為例。
滑鼠移至桌面最最左下角,彈出開始菜單,點擊左鍵。
點擊iis管理器,並選中您的網站。
點擊「管理」下的「配置編輯器」。
設置上傳超時時間限制。
點擊下拉菜單節(S),選中system.web>httpRuntime
將executionTimeout的值設為00:30:00(即30分鍾)
設置上傳文件大小限制。
點擊下拉菜單節(S),選中system.webServer>security>requestFiltering
展開requestlimits,將maxAllowedContentLength的值設為102400000(即100m)
註:這樣修改直接就能生效,無需重啟iis或者伺服器。
也可以直接在網站根目錄建一個web.config文件,用此方法可以直接省略前5步,web.config內容具體如下
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="102400000" />
</requestFiltering>
</security>
</system.webServer>
<system.web>
<httpRuntime executionTimeout="1800" />
</system.web>
</configuration>
『貳』 如何解決IIS7上傳文件大小限制
IIS對上傳文件大小有限制,IIS7 默認文件上傳大小是30M,要李答突破這個限制需要做一下修改:
1.打開 %windir%\system32\inetsrv\config\applicationhost.config 找到: <requestFiltering>節點
這個節點默認沒有 <requestLimits maxAllowedContentLength="上傳大小的雀擾返值(單位:byte)" /> 元素,IIS 7和IIS 7.5上測試過 最大值只能是<requestLimits maxAllowedContentLength="4294967295" /> <4GB,
為這個節點新增如下事例元素:<requestLimits maxAllowedContentLength="2147483647" /> ,上傳的大小將改為2G
注意:%windir%\system32\inetsrv\config\applicationhost.config 文件一定不要用其他機器的文件替換,否則IIS將無法啟動 此文件記錄了,當前IIS中所有Site , App pool的信息,還有一些與機器相關的配置。
2.修改web.config
<system.web>
<httpRuntime executionTimeout="36000" maxRequestLength="2097151"/>
<!--maxRequestLength:上傳的大小,單位K ,executionTimeout:設置超時時間,單位:秒。(默認是90秒) -->
<頃飢/system.web>
3.web.config下如果有如下節點(此節點是為IIS 7設計的) ,則修改:
<requestLimits maxAllowedContentLength="2147483647" /> 單位與applicationhost.config中的<requestLimits maxAllowedContentLength="2147483647" />一致,它的最大值也只能為4294967295<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="2147483647" />
</requestFiltering>
</security>
</system.webServer>
『叄』 iis怎麼修改上傳限制iis怎麼修改上傳限制的內容
如何解除IIS的文件上傳限制
解除IIS文件上傳限制的方法第一
在IIS中,右鍵單擊本地計算機,選擇屬性,然後選中允許直接編輯配置資料庫。
然後依次打開「控制面板-管理工具-服務」,在右邊找到「IIS管理服務」,選中後點擊滑鼠右鍵,選擇「停止」關閉服務。
修改c:/windows/system32/inetsrv/config/schema/IIS_schema.XML文件(需要獲得該文件的控制權才能修改該文件),找到maxAllowedContentLength,其默認值為3000000,即30M。如果加個0,就變成300MB了,應該夠了。如果不行,需要重啟IIS7!
之後,修改如下:
然後修改
/(此處尺寸有所變化)
檢查web.config的httpRuntime:
2097151
IIS無法啟動是什麼原因?
今天一同事的客戶伺服器IIS無法啟動,報錯-2145318902。造成成這個問題的主要原因是修改了metabase.xml文件出錯。例如修改IIS默認上傳附件大小,使用了寫字板或其他無法正常保存.xml文件的編輯工具,應該使用正確的工具來進行修改。順便貼出修改方法:打開c:windowssystem32inesrv下的metabase.xml搜索Buffer572行的AspBufferingLimit=",裡面有個AspBufferingLimit="4194304"類似,是允許的大小,可以修,注意改這個文件之前服務里先關閉iisadminservice服務,改完之後再重啟IIS服務那如何解決錯誤-2145318902呢?其實metabase.xml所在的目錄下還有個history目錄,裡面存放的是metabase.xml文件在各個時間的備份。只要從history目錄下拷貝一份到inetsrv目錄即可。是不是很簡單。
pcl2遠程伺服器返回錯誤怎麼解決?
一.「遠程伺服器返回錯誤:(501)未實現」的錯誤
解決方法:Web服務擴展中的WebDAV惹得禍,將IIS的Web服務擴展中的WebDAV設置成允許!
PS:iis6的webdav支持其實就是個基於http的ftp功能,明確iis不能直接上傳文件,需要擴展支持的話應該不會饒彎路吧?
二.「遠程伺服器返回錯誤(403)已禁止」的錯誤
解決方法:進入網站的虛擬路徑目錄,虛擬目錄屬性給寫入許可權;
三.「遠程伺服器返回錯誤:(401)未經授權」的錯誤
解決方法:
分析:由於用戶匿名訪問使用的賬號(默認是IUSR_機器名)被禁用,或者沒有許可權訪問計算機,將造成用戶無法訪問
『肆』 更改iis上傳文件的默認大小
如果是ASP或.net的
第一步:修改IIS設置,允許直接編輯配置資料庫。先打開,Internet信息服務
第二步:先在服務里關閉iis admin service服務,找到windows\system32\inetsrv\下的metabase.xml, 打開,找到ASPMaxRequestEntityAllowed 把他修改為需要的值,默認為204800,即200K,如把它修改為102400000(100M)。
然後重啟iis admin service服務。
辦法二:
新建一個文本文件,內容如下:
set providerObj=GetObject("winmgmts:/root/MicrosoftIISv2")
set vdirObj=providerObj.get("IIsWebVirtualDirSetting='W3SVC/1/ROOT'")
WScript.Echo "Before: " & vdirObj.AspMaxRequestEntityAllowed
vdirObj.AspMaxRequestEntityAllowed=102400000
vdirObj.Put_()
WScript.Echo "Now: " & vdirObj.AspMaxRequestEntityAllowed
然後保存為.vbs文件,如:vf.vbs
然後在命令行模式下,執行 cscript 文件路徑及文件名,如:cscript d:\vf.vbs
這樣ASP上傳大小就更改為了上面設置的:102400000位元組 (100兆)
關於win2003上傳限制解決方案的補充說明
到微軟站點載了IIS6 Resource Kit Tools(http://www.microsoft.com/downloads/details.aspx?FamilyID=56FC92EE-A71A-4C73-B628-ADE629C89499&displaylang=en),安裝後利用Metabase Explorer修改了(local)\LM\W3SVC\AspMaxRequestEntityAllowed屬性(默認為200K=204800),修改為1G就是了;同時修改了AspScriptTimeout屬性調整下時限,就可以上傳大文件了。
此時發現AspMaxRequestEntityAllowed丟之,點右鍵添加new屬性為asp,設置自己需要的大小,然後確定即可~~~
如果是php的
打開php.ini,首先找到
file_uploads = on ;是否允許通過HTTP上傳文件的開關。默認為ON即是開
upload_tmp_dir ;文件上傳至伺服器上存儲臨時文件的地方,如果沒指定就會用系統默認的臨時文件夾
upload_max_filesize = 8m ;望文生意,即允許上傳文件大小的最大值。默認為2M
post_max_size = 8m ;指通過表單POST給PHP的所能接收的最大值,包括表單里的所有值。默認為8M
一般地,設置好上述四個參數後,上傳<=8M的文件是不成問題,在網路正常的情況下。
但如果要上傳>8M的大體積文件,只設置上述四項還一定能行的通。
更多請關注:
http://www.chenyu.me/read-htm-tid-6320-fpage-2.html
『伍』 IIS60不能上傳大於200K文件解決辦法
1. 關閉 IIS Admin Service服務(運行iisreset.exe /stop)
2. 打開 Windows\system32\inesrv\metabase.xml
3. 修改 SPMaxRequestEntityAllowed 的值為自己需要的, 默認為 204800
4. 啟動 IIS Admin Service (運行iisreset.exe /start)
『陸』 asp在IIS里為什麼只能上傳小於200K的文件
這個是伺服器有個文件限制了。在程序里是提高不過200K以上的。
以下是怎麼提高上傳的大小限制。
2003解決IIS限制上傳、下載文件大小及metabase.xml修改
1.停止IIS Admin Service服務。 2.按照如下的路徑找到文件:系統盤(C:)Windows System32 inetsrv MetaBase.xml, 在該文件中搜索AspMaxRequestEntityAllowed,設置為你想要的數字(默認204800即200K)。 3.重新啟動IIS Admin Service服務。
默認情況下,在IIS 6 全局配置中允許上傳的文件長度最大為4 GB,但是在Web站點級卻限制了ASP應用程序上傳的最大文件長度為200 KB。如果你需要上傳超過200KB的文件,則需要手動修改IIS的metabase.xml中對應Web站點的AspMaxRequestEntityAllowed屬性。
metabase.xml位於"systemroot"\system32\inetsrv"目錄下,用於保存IIS的基本配置信息。默認情況下IIS是不允許你直接對metabase.xml進行編輯的,你可以通過以下兩種方式來實現:
1 停止IISAdmin服務後再編輯;
停止IIS服務與啟動IIS服務的方法,在CMD命令行模式下輸入以下命令:
1. net stop w3svc (停止IIS服務)
2. iisreset /stop
2 在IIS管理控制台中右擊伺服器名,選擇屬性,然後在彈出的伺服器屬性對話框中勾選允許直接編輯配置資料庫,再點擊確定即可
然後在任何文本編輯器中打開Metabase.xml文件,修改對應Web站點的AspMaxRequestEntityAllowed屬性即可,它的單位是位元組,默認是204800,改為你需要的值即可。比如改為最大上傳20M,則修改此值為:20480000.如果實在不知道20M換成位元組是多大,就用這個公式計算一下再修改吧:1024000*20(102400是100K,1024000是1M,以此類推,20M就是1024000*20=20480000)
3 編輯完記得重啟IIS服務
1. net start w3svc (啟動IIS服務)
2. iisreset /start
再加上下載不能超過4M的解決辦法:
在 IIS 6.0 中,無法下載超過4M的附件時,可以按以下步驟解決:
1、先在服務里關閉 iis admin service 服務。
2、找到 windows\system32\inesrv\ 下的 metabase.xml 文件。
3、用純文本方式打開,找到 AspBufferingLimit 把它修改為需要的值(可修改為20M即:20480000)。
4、存檔,然後重啟 iis admin service 服務。
MetaBase.xml是要求很嚴格的文件,,修改參數或格式一出錯就會無法使用,,修改前最好備份,,如果忘了備份,修改又出錯,, 還有補救方法:metabase.xml所在的目錄下還有個history目錄,裡面存放的是metabase.xml文件在各個時間的備份。至此,解決辦法也有了,就是從history目錄下拷貝一份到inetsrv目錄即可(但這樣只能修回備份時間前的資料)。如果目錄或文件沒有就要到別的機拷一份過來,但是這樣原先的配置就沒了。