[英]Can't upload files bigger than 8MB
我正在嘗試制作文件上傳腳本,並且一段時間以來一直在努力解決此問題。
我已經閱讀並嘗試了所有與此相關的SO答案,但無濟於事。
這是我在php中嘗試過的方法。 INI:
file_uploads = On
upload_max_filesize = 100M
post_max_size = 100M
memory_limit = 100M
在Apache中,我有:
<Directory /var/www/uploads>
php_value upload_max_filesize 10G
php_value post_max_size 10G
</Directory>
我可能已經嘗試了其他一些現在還沒有想到的東西。
我還想提到8MB以下的所有內容都可以順利上傳。 另外,超時也不是問題,因為上傳僅會在幾秒鍾內失敗。
PS我正在使用Cloudflare。 可能是這阻止了我的上傳嗎?
通過創建一個帶有phpinfo()的test.php文件來確認您在PHP.ini中的位置。
接下來,檢查您的Apache(LimitRequestBody指令*)和php.ini(upload_max_filesize)限制,因此通常將它們設置得更高。 值以字節為單位。
Apache 2.0的默認上載大小為524288,可在php“包含文件” /etc/httpd/conf.d/php.conf中找到,以覆蓋此值,請將以下偽指令放入您的httpd.conf虛擬主機偽指令中:
<Files *.php>
LimitRequestBody 30000000
</Files>
(此示例將請求正文限制為30M)
Apache 1.3沒有默認值,因此通常您只需要更改php.ini(upload_max_filesize,post_max_size)值和config.ini(maxuploadfilesize)值。
最后,檢查RequestReadTimeout設置。 有關更多信息, 請訪問https://serverfault.com/a/260389
有時執行時間會出現問題,請使用set_time_limit(0);
要么
檢查php.ini ini_set('max_execution_time',0); // 0
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.