php無法上傳大檔案的解決方法:1、開啟暫存檔案並對該資料夾設定寫入的權限;2、增加「max_execution_time」的值;3、設定「file_uploads」的值為on ;4、設定「upload_max_filesize=20M」等。
本文操作環境:windows7系統、PHP7.1版,DELL G3電腦
php上傳大檔案失敗的原因及應對策略
為什麼上傳大檔案總是失敗,但是上傳小檔案就沒有問題。小編也不得其解,網路搜尋其原因,整理了一篇關於php上傳大檔案失敗的原因和解決方法的文章,分享給大家。
以下分別是各種原因以及解決方法:
第1種情況:檔案上傳時存放檔案的臨時目錄必須是開啟的並且是PHP 進程所有者用戶可寫的目錄。如果未指定則 PHP 使用系統預設值。
php.ini檔案中upload_tmp_dir用來說明PHP上傳的檔案放置的臨時目錄,要想上傳文件,得保證伺服器沒有關閉臨時檔案並對該資料夾有寫入的權限。
第2種情況:max_execution_time 的值必須夠大。變數 max_execution_time 設定了在強制終止腳本前PHP等待腳本執行完畢的時間,此時間以秒計算。當腳本進入了一個無限循環狀態時此變數非常有用。然而,當存在一個需要很長時間完成的合法活動時(例如上傳大型文件),這項功能也會導致操作失敗。在這樣的情況下必須考慮將此變數值增大,以避免PHP在腳本正在執行某些重要過程的時候將腳本關閉,例如設定為 90 秒。
max_execution_time = 90
注意在php函數中還有個set_time_limit 函數,和以上這個設定的作用是相同的,這兩者的差別就是以上是在php.ini 檔案中設定的,而set_time_limit 是寫在php檔案中的。所以也可以透過在頁面中用set_time_limit 設定程式的最長執行時間,例如無限制即:set_time_limit(0);
【推薦學習:《PHP影片教學》】
第3種情況:file_uploads = On 預設值為on,意思是允許透過HTTP 進行檔案上傳,此選項無法設定為OFF。
第4種情況:upload_max_filesize = 2M 設定檔上傳的大小的最大值,php.ini設定檔中的預設檔上傳大小為2M,php初學者容易犯的一個錯誤是在寫文件上傳功能時透過設定上傳檔案最大大小的表單區域,也就是允許上傳檔案的最大值,max_file_size(隱藏值域)的值來規定上傳檔案的大小,其實一般別人可以繞過這個值,所以安全起見,最好是在php.ini 設定檔中設定upload_max_filesize 選項,設定檔上傳的大小。預設 upload_max_filesize = 2M,也就是文件上傳的大小為2M,如果你想上傳超過8M的文件,例如20M,你必須設定upload_max_filesize = 20M。
第5種情況:post_max_size 這個值也必須夠大。這個變數也是一個同表單提交相關的變量,它限制的是客戶端透過POST方法進行一次表單提交時PHP程式所能夠接收的最大資料量。一般情況下,將此值的值設定的比 upload_max_filesize 略大即可,例如要上傳20MB的文件,此值可以設定為 21MB。
第6種情況:max_input_time 此變數可以以秒為單位對透過POST、GET以及PUT方式接收資料時間進行限制。如果應用程式所運作環境處在網路比較慢的情況下,則需要增加此值以增加接收資料所需的時間,例如將此值設為 90秒。
max_input_time = 90
第7種情況:memory_limit 也必須足夠大,為了避免正在運行的腳本大量使用系統可用內存,PHP允許定義內存使用限額。透過memory_limit變數來指定單一腳本程式可以使用的最大記憶體容量。變數memory_limit的值應當適當大於post_max_size的值。
第8種情況:另外如果你的主機是nginx 作業系統的話,如果以上操作都不行的話,記得在nginx 的設定檔裡面加上client_max_body_size 20m; 這樣一句,即表示最大允許上傳20MB ,具體根據自己的情況來。我的nginx 設定檔的位置在 /usr/local/nginx/conf/nginx.conf。
閱讀完這篇文章大家應該大概知道大檔案上傳失敗的原因了吧,希望本文可以為大家提供一些思路,更好的去解決類似問題。
以上是php 無法上傳大檔案怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本文比較了酸和基本數據庫模型,詳細介紹了它們的特徵和適當的用例。酸優先確定數據完整性和一致性,適合財務和電子商務應用程序,而基礎則側重於可用性和

本文討論了確保PHP文件上傳的確保,以防止諸如代碼注入之類的漏洞。它專注於文件類型驗證,安全存儲和錯誤處理以增強應用程序安全性。

本文討論了在PHP中實施API速率限制的策略,包括諸如令牌桶和漏水桶等算法,以及使用Symfony/Rate-limimiter之類的庫。它還涵蓋監視,動態調整速率限制和手

本文討論了使用password_hash和pyspasswify在PHP中使用密碼的好處。主要論點是,這些功能通過自動鹽,強大的哈希算法和SECH來增強密碼保護

本文討論了OWASP在PHP和緩解策略中的十大漏洞。關鍵問題包括注射,驗證損壞和XSS,並提供用於監視和保護PHP應用程序的推薦工具。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

Atom編輯器mac版下載
最受歡迎的的開源編輯器

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

SublimeText3漢化版
中文版,非常好用

WebStorm Mac版
好用的JavaScript開發工具

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器