You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Plesk环境下Express/Nodejs用multer上传报413 Request Entity Too Large如何解决

Plesk环境Node.js+multer上传返回413 Request Entity Too Large 解决方案

问题原因

本地运行无限制是因为缺少Plesk自带的反向代理层校验,Plesk默认会在Nginx/Apache反向代理、站点服务配置、Node运行环境多层设置请求体大小上限,超过阈值就会返回413错误,和multer本身配置无直接关联。

分步调整配置

  • 确认multer侧大小限制

    先保证multer配置的文件大小上限符合业务需求,示例如下(允许最大100MB文件上传):

    const multer = require('multer');
    const upload = multer({
      storage: multer.diskStorage({
        // 你的本地/OSS存储逻辑
      }),
      limits: {
        fileSize: 100 * 1024 * 1024 // 单位为字节,按实际需求调整
      }
    })
    

    注意:multer的大小上限要和后续服务器配置的上限保持一致,避免出现逻辑冲突

  • 修改Nginx反向代理配置

    Plesk默认Nginx请求体上限仅为2MB,需手动调整:

    1. 登录Plesk面板进入对应站点管理页
    2. 依次进入「主机设置」→「Web服务器(Nginx)」配置区
    3. 在「附加Nginx指令」输入框添加如下配置:
      client_max_body_size 100M; # 数值和业务需要的最大上传大小保持一致
      
    4. 保存配置等待生效
  • (使用Apache的环境)调整Apache请求限制

    若站点用Apache处理动态请求,还需要修改Apache的大小上限:

    1. 进入站点「主机设置」→「Web服务器(Apache)」配置区
    2. 在「附加Apache指令」的HTTP、HTTPS两个输入框中分别添加:
      LimitRequestBody 104857600 # 单位为字节,100MB对应值为100*1024*1024
      
    3. 保存配置后重启站点服务
  • 调整Plesk Node.js扩展配置

    Plesk的Node.js托管扩展也可能存在默认请求限制,按需调整:

    1. 进入站点「Node.js」管理页面
    2. 在「自定义环境变量」区域添加变量:
      变量名:NODE_OPTIONS,变量值:--max-http-header-size=1048576
    3. 点击「重启应用」生效配置

验证方式

所有配置调整完成后,上传大小符合新阈值的文件测试即可。如果仍然报错,可查看站点错误日志定位是哪一层返回的413错误,对应调整阈值即可。

内容的提问来源于stack exchange,提问作者mohammadyasin parsi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 04:51:02