nginx php大文件上传,Nginx+PHP上传大文件设置
nginx的修改
send_timeout 60;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
client_max_body_size 30m; 可以全局設置也可以每個網站單獨設置
php的修改
upload_max_filesize 10M
post_max_size 15M 該項應該要大于 upload_max_filesize
max_input_time 300
max_execution_time 300
php-fpm注意參數
request_terminate_timeout 300
request_slowlog_timeout 如果多數為上傳大文件則設置較大值,這個根據自身情況設置
這兩個參數如果設置過小的話會導致文件傳輸了一部分后連接關閉。
最大時間根據用戶帶寬計算,不建議設置為 0 無限制,避免意外宕機。
==========================================================
由于看到網上很多配置帖子中說要把 nginx.conf 中的 keepalive_timeout 時間設置加大才行
我的服務器上設置為:
keepalive_timeout 60; 默認 大概 75s 我設置的是 60,
所以
經過實際測試,本地限速 34KB/s 上傳 9MB 文件,用時270秒左右,上傳成功,
表明實際上傳不受 keepalive_timeout 時間影響,和該項配置無關
而且這個時間加長會嚴重影響 nginx 的并發
至于 send_timeout 我在網上查詢了半天也沒搞清楚到底是怎么個超時,同樣也測試過,
將 send_timeout 設置為 60 后,
上傳超過 170s 仍然上傳成功,所以我理解的是該超時時間應該為 客戶端上傳時網絡斷流后超過 60s 則停止接收接收操作,中斷連接。只要持續發送數據則不會斷掉,可能是這樣的吧
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的nginx php大文件上传,Nginx+PHP上传大文件设置的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php入门公开课,【PHP公开课|送你一
- 下一篇: php获取微信收款记录,微信公众号开发之