大文件上传失败需调大 client_max_body_size:一、网站配置文件中 server 块添加;二、全局 nginx.conf 的 http 块添加;三、同步调整 PHP 的 post_max_size 和 upload_max_filesize;四、命令行编辑 site_name.conf 并重载。

如果您在使用宝塔面板部署的网站时遇到大文件上传失败的问题,可能是由于 Nginx 默认的 client_max_body_size 值过小导致请求被拒绝。以下是修改该参数的具体操作步骤:
一、通过宝塔面板网站配置文件修改
此方法直接编辑指定网站的 Nginx 配置文件,在 server 块中添加或修改 client_max_body_size 指令,适用于单个站点的独立调整。
1、登录宝塔面板,进入【网站】页面,找到目标站点,点击右侧【设置】按钮。
2、在弹出窗口中切换到【配置文件】选项卡。
3、在 location ~ \.php(.*)? { 区块上方或 server 块内(确保不在其他嵌套块中)插入以下行:
client_max_body_size 2048m;
4、点击右上角【保存】按钮,使配置生效。
5、返回【网站】列表,点击该站点右侧【重启】按钮,重新加载 Nginx 配置。
二、通过宝塔面板全局 Nginx 配置修改
此方法修改 /www/server/nginx/conf/nginx.conf 文件中的 http 块,可统一影响所有使用该 Nginx 实例的站点,适合多站点需统一上传限制的场景。
1、在宝塔面板左侧菜单中点击【软件商店】,找到已安装的 Nginx,点击右侧【设置】。
2、在设置页中选择【配置修改】选项卡。
3、在打开的 nginx.conf 编辑界面中,定位到 http { 开始的大括号后第一行(即 http 块起始位置之后、任何 server 块之前)。
4、在此处新增一行:
client_max_body_size 2048m;
5、点击【保存】,然后点击【重载配置】按钮以应用变更。
三、通过宝塔面板“PHP 设置”间接适配
当上传文件同时受 PHP 的 post_max_size 和 upload_max_filesize 限制时,仅调大 Nginx 参数仍可能导致 502 错误。本方法同步调整 PHP 相关参数,确保全链路支持大文件。
1、回到目标网站的【设置】窗口,切换到【PHP 版本】选项卡。
2、点击当前启用的 PHP 版本右侧的【设置】按钮。
3、在新页面中选择【配置文件】选项卡。
4、查找并修改以下两行(若不存在则手动添加):
post_max_size = 2048M
upload_max_filesize = 2048M
5、保存配置后,返回上一级,点击【重载PHP】按钮。
四、通过命令行直接编辑配置并重载
此方法绕过面板界面,适用于面板响应异常或需批量处理多个配置文件的情况,操作更底层且可控性强。
1、使用 SSH 工具连接服务器,执行以下命令打开网站配置文件(请将 site_name 替换为实际域名):
nano /www/server/panel/vhost/nginx/site_name.conf
2、在 server { 块内任意位置(推荐放在 root 行下方)添加:
client_max_body_size 2048m;
3、按 Ctrl+O 保存,Ctrl+X 退出编辑器。
4、执行重载命令:
/etc/init.d/nginx reload










