乐趣区

nodeexpressnginx架构关于上传文件出现-Request-Entity-Too-Large-的问题

解决方法分两步走:

1、修改 express 框架设置请求的允许最大值

将原框架中这两行代码:

app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false}));

修改为:

app.use(bodyParser.json({limit: '50mb'})); // 这里 limit 值可以根据实际情况自由设定
app.use(bodyParser.urlencoded({
    limit: '50mb',
    extended: true
}));

重启服务继续上传大文件,如果问题解决,到此 OK。
如果仍然没有解决就有可能是代理 nginx 配置文件设置的问题,进入第二步。

2、修改 nginx 的配置文件 nginx.conf

在 http{} 中添加或者修改 client_max_body_size 设置

http {
    client_max_body_size 100m;  // 添加或修改本行配置,最大允许值可根据需求自由设定
    include       mime.types;
    default_type  application/octet-stream;
    ...
}

修改后上传覆盖掉原来的配置 路径 /usr/local/nginx/conf/nginx.conf 一般路径是这样,特殊情况自己去查。
重启 nginx

nginx -s reload
或者 /usr/local/nginx/sbin/nginx -s reload

问题解决。

退出移动版