采用nginx和uwsgi的web应用,在页面ajax请求时,如果请求超过60s,则ajax会受到404的错误。解决方式如下。

情况一

如果nginx采用uwsgi_pass方式,则在nginx的server location中加上参数uwsgi_read_timeout

    location / {
        uwsgi_pass 127.0.0.1:8000;
        include uwsgi_params;
        uwsgi_read_timeout 90s;
    }

情况二

nginx采用proxy_pass方式,则在nginx的server location中加上参数proxy_read_timeout

    location / {
        proxy_pass http://127.0.0.1:8000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_read_timeout 90s;
    }

uwsgi的启动参数中加上参数http-timeout

uwsgi --wsgi-file $UWSGI_FILE --master -p $PROCESS --threads $THREADS --http :$PORT -b 8192  --http-timeout 90

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐