我们将 nginx 配置为在超时和错误时通过以下方式重试向上游的另一台服务器发出请求:
proxy_next_upstream http_503 timeout;
proxy_next_upstream_tries 2;
但我们希望第二台服务器知道这实际上是一个重试请求。
我们知道如何向请求添加标头(add_header),但不知道如何添加一些标记来表示重试。
谢谢!
答案1
NGINX 中没有用于上游重试次数的变量:变量的字母索引
但是您可以使用替代解决方案来跟踪重试请求,例如在 NGINX 负载均衡器中附加$upstream_status
或$upstream_addr
重试请求。$upstream_status