原先使用windows 2003 server和IIS6,默認限制為4m,可以通過如下方式解決


修改web.cofing文件,在system.web標籤中添加

<httpRuntime maxRequestLength="2097151" executionTimeout="36000"/>


使用windows 2008 IIS7環境,<httpRuntime maxRequestLength="2097151" executionTimeout="36000"/>無效

方法:

第一:修改服務器配置文件(測試環境:window7 x64和IIS7)

一、找到修改大小的配置文件和配置節點

打開你係統盤(我是C盤),找到 C:\Windows\System32\inetsrv\config\schema目錄,該目錄下有一個IIS_schema.xml,右擊打開文件,Ctrl+F,然後輸入"

<attribute name="maxAllowedContentLength" type="uint" defaultValue="30000000" />",找到該配置節點,我們看到有一個defaultValue=30000000,不錯,就是它限制了上傳文件的大小,既然找到了,那就讓咱來把它修改掉吧,暫且把30m改為50m(50M左右)試試吧!Ctrl+S,彈出無法保存,文件是隻讀屬性!那好吧,咱來把文件的只讀屬性改掉吧!右擊—>屬性—>去掉只讀,保存!嘣,彈出了一個對話框,


提示沒有權利修改文件屬性,用的是管理員登錄的,還沒有權限,哎,權限問題!同樣,我們這時想編輯administrator權限把修改和寫入權限加上去同樣會彈出上面沒有權限的提示!

二、修改文件權限以便能修改文件

找到了修改的地方卻不能修改,卻碰到權限問題,而且就這個 權限問題還搞了我半天,鬱悶啊!廢話少説,繼續工作吧!

右擊文件—>屬性—>安全,我們看看administrator權限


我們看到,administrator只有讀取的權限,並沒有寫入和修改的權利,我們再看下面有個TrustedInstaller


我們發現該用户組卻又這對當前這個文件的所有權限!百度看下,網上説從Vista到Windows 7系統開始,系統加入了TrustedInstaller虛擬帳目,權限比administrator還大,哎,不管它呢!現在我就要用administrator來修改文件。單擊“高級”—>"所有者",如下:


當前所有者是"TrustedInstaller",我們要把它改為“administrator”,單擊“編輯”,選擇“administrator”,單擊“應用”,這時彈出一個對話框,如下圖:


不用管它,單擊確定,這時,我們看當前文件的所有者變成administrator了,如下圖:


操作完這一切了,我們回頭想直接修改文件屬性還是不夠的,我們需要把我們administrator對文件的權限提升下,勾上“完全控制”,如下圖:


單擊確定保存就ok了!

三、修改配置文件

好了,我們現在有文件的完全控制權限了,我們先把文件的只讀屬性去掉,接下來修改大小就很簡單,找到第一步講的配置節點將大小修改為自己想要的大小,然後重啓下IIS即可,經驗證也是正確的!到現在對IIS對上傳附件大小限制的修改也就完成了!


四、後續——將文件的權限還原

剛才我們將文件的所有者改為了administrator,現在我又想將文件的所有者還原,怎麼辦呢,按照老辦法:右擊—>屬性—>安全—>高級—>所有者—>編輯—>其他用户或組,我們輸入“TrustedInstaller”,檢查名稱卻説找不到用户名和組,於是繼續百度啊!原來全程應是“NT SERVICE\TrustedInstaller”,檢查名稱果然正確了,然後確定—>確定……就這樣,我們又把文件還原成修改前的權限啦


第二種:修改程序web.cofing配置(個人推薦此方式,減少實施部署難度和工作量)

IIS7的上傳文件大小,即便是在經典模式下,也一定要在system.webServer裏設置,加上去就OK了:

[p=21, null, left]<system.webServer>

<security>

<requestFiltering >

<requestLimits maxAllowedCnotallow="1073741824" ></requestLimits>

</requestFiltering>

</security>

</system.webServer>[/p]