nginx:1.20
python:3.7
1、百度查询很容易找到这个信息,设置:
client_max_body_size 50m;
或者
client_max_body_size 0; //0代表不限制
Module ngx_http_core_module
2、调整完毕,还是不行,开始一顿瞎操作,各种调整nginx参数,事实证明没有用;
要相信官方文档;
4、看nginx的log日志,怀疑uwsgi的问题,因为日志中有这些信息;
recv() failed (104: Connection reset by peer) while reading response header from upstream
upstream prematurely closed connection while reading upstream
writev() failed (104: Connection reset by peer) while sending request to upstream
停掉uwsgi服务,直接使用python命令启动程序(python3 run.py)
3、还是不行,排查python程序中的上传文件接口函数,一通修改,还是不行;
4、网上着凉一个go程序(go实现Http Server文件服务器,提供上传、下载功能_Go和分布式IM的博客-CSDN博客),编译成二进制服务,停掉py服务,启动go服务,代替上传文件功能;发现可以正常上传;
5、回过头来,继续排查python程序;原来是flask框架里面app启动时,写了一个配置;
app = Flask(__name__, static_folder='template')
app.config['MAX_CONTENT_LENGTH'] = 16 * 1024 * 1024
嗯,把这家伙抓出来,暴揍一顿吧