一、環境:
CentOS 6.8
nginx 1.8.0
php 7.0.10
二、背景
基於nginx php 的h5 項目,上傳影片的時候,如果影片太大,會上傳失敗。
相關推薦:《php入門教學》
三、正文
一份影片傳到後端,需要經過兩道關卡:
1、nginx
2、php
#解決方案=> 修改設定項(即下圖箭頭上的文字):
1、修改nginx 設定
#開啟nginx.conf,修改:
client_max_body_size 500m;
重啟nginx 後,上傳大小超過200M 的視頻,才會報錯:
413 Request Entity Too Large
2、修改php 配置
打開php.ini,修改:
upload_max_filesize 500M post_max_size 550M memory_limit 600M
重啟php。
附註:為什麼要 upload_max_filesize
對於一個上傳檔案的請求來講,存在以下等式:
POST DATA = 檔案 Base64 表單其他項目數據,
HTTP DATA = HTTP HEAD POST DATA。
檔案大小由upload_max_filesize 限制,
POST DATA 大小由post_max_size 限制,
而整個HTTP 請求的資料都會先放到記憶體緩存,即HTTP DATA 的大小由memory_limit 限制。
以上是php上傳大影片上傳不了怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!