通过 Ec2 部署代码时,大尺寸视频/文件上传不起作用在当地工作正常

问题描述

Frontend 基于 Reactjs,使用 Ant 作为设计模式。 通过 Node/Express(Strapi CMS) 支持通过 s3 上传文件

小于 200 mb 的小文件工作正常,但当服务器代码通过 Aws Ec2 部署时,大于 400Mb 的大文件会失败。

解决方法

目前负责解析请求的 Strapi 中间件需要配置为支持大于默认 200MB 的文件大小。

您可以通过在config/middleware.js中的解析器中间件配置中设置直接将配置传递给中间件

module.exports = {
  //...
  settings: {
    parser: {
      enabled: true,multipart: true,formidable: {
        maxFileSize: 200 * 1024 * 1024 // Defaults to 200mb
      }
    }
  },//...
};

顺便说一句,如果您在 EC2 中使用 nginx 作为反向代理服务器,那么您还需要更新 client_max_body_size 参数。请参阅此How to edit nginx.conf to increase file size upload