對于nginx+php的一些網站,上傳文件大小會受到多個方面的限制,一個是nginx本身的限制,限制了客戶端上傳文件的大小,一個是php.ini文件中默認了多個地方的設置。所以為了解決上傳文件大小限定的問題必須要做出多處修改。以下整理了幾個地方。
- max_execution_time = 300
- max_input_time = 600
前面已經介紹過apache+php下如何解決php文件上傳大小限制問題。那么對于nginx+php網站,與apache+php下如何解決php文件上傳大小限制問題不同的就是nginx本身的限制,限制了客戶端上傳文件的大小,這里以nginx為例說明nginx+php下如何解決這個問題。
1.nginx配置項修改
修改/usr/local/nginx/conf/nginx.conf 文件,查找 client_max_body_size 將后面的值設置為你想設置的值。比如:
- location ~ /.php$ {
- root /home/www/htdocs;
- fastcgi_pass www.169it.com;
- fastcgi_index index.php;
- fastcgi_param SCRIPT_FILENAME /home/www/htdocs$fastcgi_script_name;
- include fastcgi_params;
- client_max_body_size 10m;
- #客戶端上傳文件大小設為10M
- client_body_temp_path /home/www/nginx_temp;
- #設置臨時目錄
- }
2.php配置項修改
還需要根據實際情況來修改php.ini配置文件中的max_execution_time(php頁面執行最大時間)、 max_input_time(php頁面接受數據最大時間)、memory_limit(php頁面占用的最大內存)、upload_max_filesize和post_max_size等5個參數。
修改php.ini配置文件
- upload_max_filesize = 20M
- post_max_size = 30M
- memory_limit = 256M
如果文件過大,會出現時間問題,必要的話,做如下修改:
- max_execution_time = 300
- max_input_time = 600
以上內容就是本文給大家敘述的有關通過修改配置真正解決php文件上傳大小限制問題(nginx+php)的,希望大家喜歡。
新聞熱點
疑難解答