nginx:增加超时以防止404找不到错误?

时间:2015-07-29 16:20:42

标签: nginx

我有一台运行Gunicorn的Django服务器,在我面前我有nginx。我直接从nginx提供静态文件,并将其他内容传递给Gunicorn。

我有一些运行缓慢的后端查询,而且我发现nginx经常会在返回之前超时 - 所以我看到了404页面。

有没有办法可以提高超时水平?

这是我的nginx conf文件:

server {
    listen 443;
    client_max_body_size 4G;
    access_log /webapps/myapp/logs/nginx-access.log;
    error_log /webapps/myapp/logs/nginx-error.log;
    location /media/ {
        alias   /webapps/myapp/myapp/media/;
    }
    location / {
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto https;
        proxy_set_header Host $http_host;
        proxy_redirect off;
        if (!-f $request_filename) {
            proxy_pass http://hello_app_server;
            break;
        }
    }

我想也许我需要proxy_read_timeout,但我不确定文档。

1 个答案:

答案 0 :(得分:8)

尝试

  

proxy_read_timeout 120s;

将其放入代理部分。

默认显然是60秒,所以尝试加倍并从那里开始。

对它不太自信,但我今天在工作的服务器上有一些类似于mysql超时的东西,并且加倍工作。值得一试,希望它有所帮助。