IIS7.0上傳大文件出錯的解決方案(Windows7+IIS7.5+PHP修改上傳文件大小的解

1.單擊 開始 。 在 開始搜索 框中, 鍵入 Notepad. 右擊 記事本 , 然後單擊 作爲管理員運行 。

注意 如果提示用於管理員密碼或用於確認, 鍵入密碼, 或單擊 繼續
2.在 文件 菜單上, 單擊 打開 。 在 文件名 框中, 鍵入 %windir%\system32\inetsrv\config\applicationhost.config然後單擊 打開 。
3.修改iis7.5配置文件
測試php FileUpload控件,依託於windows7的IIS7.5上傳大附件時失敗,只要超過30M就不行了。但我在web.config中明明設置了

爲什麼不起作用尼.根據IE提示錯誤信息:
打到%windir%\system32\inetsrv\config\applicationhost.config ,然後單擊 打開 。
在該 ApplicationHost.config 文件中找不到maxAllowedContentLength 屬性。 那麼自己添加一個值,使客戶端發送作爲請求的一部分的內容長度標頭的大小相同。 默認情況下, maxAllowedContentLength 屬性的值是 30000000。幫助信息說到maxAllowedContentLength 的默認大不爲30M。
這時明白web.config文件中設定的是針對某個WEB站點.而非全部站點的上傳大小。在當applicationhost.config 中未對maxAllowedContentLength 設定大小時默認就是30M,在web.config中設定超過於30M,依然上傳最大爲30M。然而在applicationhost.config未找到節點,那麼自己試着在system.webServer中添加此節點,一定要在system.webServer裏設置。

   
      
        
         
        
      
   


再次上傳大附件,OK成功!:)


附轉載:FLASH的swfupload上傳大小修改

前一段時間會員的上傳組件改用FLASH的swfupload來上傳,既能很友好的顯示上傳進度,又能完全滿足大文件的上傳。

後來服務器升級到windows 2008,改爲IIS7後,上傳文件一旦超過30M時,就出現404錯誤,而且是是上傳進度達到100%之後,真是讓人難思其解。

反覆測試,發現FLASH上傳文件到並沒有正確的執行.NET程序,也就是.NET程序本身有問題;

但小於30M又是一切OK,難道是上傳的文件大小有所限制?

檢查web.config的httpRuntime :



已經是很大值了。

因爲無法正確得到詳細的錯誤信息,就用一個普通的FORM提交一個FileUpload測試,原來真是web.config的設置問題:

最可能的原因:
Web 服務器上的請求篩選被配置爲拒絕該請求,因爲內容長度超過配置的值。


可嘗試的操作:
確認 applicationhost.config 或 web.config 文件中的 configuration/system.webServer/security/requestFiltering/requestLimits@maxAllowedContentLength 設置。

鏈接和更多信息
這是一項安全功能。請不要更改此功能,除非您完全清楚更改的影響範圍。您可以配置 IIS 7.0 服務器以拒絕內容長度大於指定值的請求。如果請求的內容長度大於所配置的長度,便會返回此錯誤。如果需要增加內容長度,請修改 configuration/system.webServer/security/requestFiltering/requestLimits@maxAllowedContentLength 設置。

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

   
      
        
         
        
      
   

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章