修改文件上傳大小,除了需要修改PHP的設置參數外,還需要注意以下幾點:
1、上傳文件如果太大,PHP緩存空間和執行時間需要適當延長。PHP緩存空間主要是指PHP臨時目錄剩余空間大小,還有就是PHP進程的內存限制,以及PHP運行執行的等待時間需要延長。
2、除了PHP設置外,還需要對IIS對應站點做一定的調整。
下面就具體來了解一下上傳文件需要改動那一些參數:
PHP相關設置:upload_max_filesize = 2M //PHP最大能接受的上傳文件大小,默認值為2MB,需要根據您的上傳文件大小修改適當數值。post_max_size = 8M //PHP設定POST數據所允許的最大大小。默認值為8MB,需要注意的是post_max_size的數值大于upload_max_filesize的數值為佳.memory_limit = 128M //內存上限。默認值為128MB,如果上傳文件超過內存上限建議更改數值避免傳輸文件時內存不夠。max_execution_time = 30 //PHP最大執行時間。默認值為30秒,如果上傳文件較大,30秒的PHP執行時間無法滿足建議調高。
max_execution_time =0,0表示沒有時間限制 max_input_time = 60 //每個PHP頁面接收數據所需的最大時間,默認60秒,如果上傳文件較大,60秒的PHP執行時間無法滿足建議調高。upload_tmp_dir = //文件上傳至服務器上存儲臨時文件的地方,如果沒指定就會用系統默認的臨時文件夾,如果臨時目錄所在的磁盤空間不足已存儲上傳文件,請修改到其他盤符空間充足的地方IIS相關設置:點擊iis管理器,并選中您需要上傳文件的網站。在功能頁選擇“管理”下的“配置編輯器”。如下圖

設置上傳超時時間限制。
點擊下拉菜單節(S),選中system.web>httpRuntime
將executionTimeout的值設為00:30:00(即30分鐘)

設置上傳文件大小限制。
點擊下拉菜單節(S),選中system.webServer>security>requestFiltering
展開requestlimits,將maxAllowedContentLength的默認值設為512000000(即500m)
注:這樣修改直接就能生效,無需重啟iis或者服務器。
如果您找不到設置,也可以直接在網站根目錄建一個web.config文件,用此方法可以直接省略前面的步驟,web.config內容具體如下
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="512000000" />
</requestFiltering>
</security>
</system.webServer>
<system.web>
<httpRuntime executionTimeout="1800" />
</system.web>
</configuration>
executionTimeout數值單位是秒,maxAllowedContentLength的數值單位是KB。