网站如何上传超大文件?
要允许网站上传超大文件,需要修改 PHP、Web 服务器(如 Nginx 或 Apache)的相关配置。以下是详细的步骤:
1. 修改 PHP 配置
-
找到
php.ini文件:- 通常位于
/etc/php/7.x/fpm/php.ini或/etc/php/7.x/cli/php.ini(根据您的 PHP 版本和安装方式不同,路径可能有所不同)。
- 通常位于
-
修改
upload_max_filesize和post_max_size:- 打开
php.ini文件,找到以下两个配置项并修改:upload_max_filesize = 2000M post_max_size = 2000M upload_max_filesize控制单个文件的最大上传大小。post_max_size控制整个 POST 请求的最大大小,通常应大于或等于upload_max_filesize。
- 打开
-
保存并重启 PHP:
- 保存
php.ini文件。 - 重启 PHP-FPM 服务(如果使用 PHP-FPM):
sudo systemctl restart php7.x-fpm - 或者重启 Web 服务器(如 Apache):
sudo systemctl restart apache2
- 保存
2. 修改 Nginx 配置
-
找到
nginx.conf文件:- 通常位于
/etc/nginx/nginx.conf。
- 通常位于
-
修改
client_max_body_size:- 打开
nginx.conf文件,在http块中添加或修改以下配置:http { ... client_max_body_size 20000M; ... } client_max_body_size控制客户端请求的最大大小。
- 打开
-
保存并重启 Nginx:
- 保存
nginx.conf文件。 - 重启 Nginx 服务:
sudo systemctl restart nginx
- 保存
3. 修改 Apache 配置
-
找到
httpd.conf文件:- 通常位于
/etc/httpd/conf/httpd.conf或/etc/apache2/apache2.conf(根据您的操作系统和安装方式不同,路径可能有所不同)。
- 通常位于
-
修改
LimitRequestBody:- 打开
httpd.conf文件,找到或添加以下配置:LimitRequestBody 1048576000 LimitRequestBody控制请求体的最大大小,单位为字节。例如,1000M 即 1048576000 字节。
- 打开
-
保存并重启 Apache:
- 保存
httpd.conf文件。 - 重启 Apache 服务:
sudo systemctl restart apache2 - 或者:
sudo systemctl restart httpd
- 保存
注意事项
-
安全性:
- 允许上传超大文件可能会增加服务器的负载和安全风险。建议在生产环境中谨慎调整这些配置,并考虑使用其他方法(如分片上传)来处理大文件上传。

扫码添加技术【解决问题】
专注企业网站建设、网站安全16年。
承接:企业网站建设、网站修改、网站改版、BUG修复、问题处理、二次开发、PSD转HTML、网站被黑、网站漏洞修复等。
专业解决各种疑难杂症,您有任何网站问题都可联系我们技术人员。
本文来自博客园,作者:黄文Rex,转载请注明原文链接:https://www.cnblogs.com/hwrex/p/18596338

浙公网安备 33010602011771号