【问题标题】:nginx: increase timeout to prevent 404 not found error?nginx:增加超时以防止 404 not found 错误?
【发布时间】:2015-07-29 16:20:42
【问题描述】:

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

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

有没有办法提高超时级别?

这是我的 nginx 配置文件:

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,但我不确定来自文档。

【问题讨论】:

    标签: nginx


    【解决方案1】:

    试试

    proxy_read_timeout 120s;

    把它放在你的代理部分。

    默认值显然是 60 年代,因此请尝试加倍并从那里开始。

    对此不太有信心,但我今天在工作服务器上的 mysql 超时有类似的情况,并且工作量加倍。值得一试,希望对您有所帮助。

    【讨论】:

    • 你为我节省了很多时间。确实这是一个正确的答案。
    猜你喜欢
    • 2021-07-20
    • 2014-08-01
    • 1970-01-01
    • 2023-02-02
    • 1970-01-01
    • 2021-12-27
    • 1970-01-01
    • 2012-02-25
    • 2020-02-04
    相关资源
    最近更新 更多