Nginx 413 Request Entity Too Large

去年种下了10盆多肉,今年只剩6盆还存活了。于是开春之后又买了20盆左右的多肉,今年争取存活率达到80%。于是近日写了个微信小程序,用来记录植物的生长状态。

小程序上线后遇到的第一个问题就是,直接拍摄图片上传没有问题,但是如果选择相册里已有的照片就会导致上传失败。初步猜测是由于原相机拍摄的照片过大。打印日志发现果然服务器返回413 Request Entity Too Large,但我很好奇为啥小程序的wx.request会走success回调而不是fail呢?

修复的方法很简单,就是配置一下nginx的参数

1. 查看找出nginx日志的位置

1 find / -type f -name access.log

/var/log/nginx/access.log

2. 查看日志,确认413错误码是从nginx而不是服务端返回的

3. 用步骤1的命令找到nginx配置文件的位置

/etc/nginx/nginx.conf

4. 在http节点添加client_max_body_size 2m,表示限制上传大小为2M

5. 重新加载nginx配置

1 nginx -s reload