![在 IIS/FastCGI 中上傳多個文件](https://rvso.com/image/668799/%E5%9C%A8%20IIS%2FFastCGI%20%E4%B8%AD%E4%B8%8A%E5%82%B3%E5%A4%9A%E5%80%8B%E6%96%87%E4%BB%B6.png)
我需要幫助解決一個對我來說很奇怪的問題。我正在使用 IIS 伺服器用 PHP 開發一個應用程式(我不決定,不要怪我哈哈),當我嘗試上傳超過 6 個檔案時,我沒有收到任何錯誤,但從腳本中找不到請求上傳檔案。
"NetworkError: 404 Not Found - https://dev-server-host/admin/admin-manage-file-uploads.php?add=1&inst=GalleryPic&doctype=img"
我認為問題出在文件上傳的 PHP 配置中,但我檢查過限制相當大:
max_execution_time = 600
max_input_time = 120
memory_limit = 2000M
post_max_size = 1000M
upload_max_filesize = 1000M
max_file_uploads = 5000
IIS 端是否缺少任何配置?
我沒有該專案的 Web.config(*) 文件,我應該設定一個包含上傳參數定義的 Web.config 檔案嗎?
(*) 如果我錯了,請糾正我,但我認為只有 ASP 應用程式需要此文件,對於 PHP,不會處理此文件。
答案1
我為解決該問題所做的工作是:
- 在我的應用程式的 IIS 部分中開啟請求過濾
- 選擇“規則”標籤
- 點擊右側操作選單中的“編輯功能設定...”
- 增加「最大允許內容長度」的值
等效的方法是建立包含以下內容的 Web.config:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="209715200" />
</requestFiltering>
</security>
</system.webServer>
</configuration>
顯然,即使對於 PHP 應用程序,Web.config 檔案也能發揮作用。