Nginx - [警告] 上游响应缓冲到临时文件 /var/cache/nginx/proxy_temp/7/08/0000000087

Nginx - [警告] 上游响应缓冲到临时文件 /var/cache/nginx/proxy_temp/7/08/0000000087

Nginx 是我的网站的反向代理,有时网站会出现故障,导致出现错误页面。

我像这样重新启动了我的应用程序:
systemctl restart myapplication.service
但没有帮助。

然后我像这样重新启动了 SQL 服务
systemctl restart mssql-server
,但没有帮助。

然后我Nginx像这样重新启动了服务
systemctl restart nginx
,网站又可以正常运行了。

因此我查看了 nginx 错误日志并试图找出问题所在,我看到了数千行这样的警告:

[警告] 31507#31507: *4839 读取上游时,上游响应被缓冲到临时文件 /var/cache/nginx/proxy_temp/2/20/0000000202

这是我的配置默认配置文件文件:

server {
    #listen        80;
    listen                 *:443 ssl;
    ssl_certificate        /etc/ssl/example.pem;
    ssl_certificate_key    /etc/ssl/example.key;
    server_name            example.com *.example.com;
    location / {
        proxy_pass         https://localhost:7001/;
        proxy_http_version 1.1;
        proxy_set_header   Upgrade $http_upgrade;
        proxy_set_header   Connection keep-alive;
        proxy_set_header   Host $host;
        proxy_cache_bypass $http_upgrade;
        proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header   X-Forwarded-Proto $scheme;
    }
}

我读了给出的答案这里这建议设置为proxy_max_temp_file_size0但这对我来说没有意义,因为如果缓冲区已满,它会写入临时文件,那么我为什么要将其限制为 0?

我正在考虑的另一个选项是增加缓冲区大小(默认值),但我并不知道是否应该这样做。它说:

语法:proxy_buffer_size size;
默认值:proxy_buffer_size 4k|8k;
上下文:http、server、location

设置用于读取从代理服务器收到的响应的第一部分的缓冲区大小。此部分通常包含一个小的响应标头。默认情况下,缓冲区大小等于一个内存页。根据平台的不同,缓冲区大小可以是 4K 或 8K。但是,它可以变得更小。

我应该怎么办?

相关内容