nginx proxy_next_upstream

proxy_next_upstream

Syntax: proxy_next_upstream error | timeout | invalid_header | http_500 | http_502 | http_503 | http_504 | http_403 | http_404 | non_idempotent | off ...;
Default:    proxy_next_upstream error timeout;
Context:    http, server, location

指定请求应传递到下一个服务器的情况:

  • error:在与服务器建立连接,向其传递请求或读取响应标头时发生错误;

  • timeout:在与服务器建立连接,向其传递请求或读取响应头时发生超时;

  • invalid_header:服务器返回空响应或无效响应;

  • http_500:服务器返回了带有代码500的响应;

  • http_502:服务器返回具有代码502的响应;

  • HTTP_503:服务器返回具有代码503的响应;

  • http_504:服务器返回具有代码504的响应;

  • http_403:服务器返回带有代码403的响应;

  • http_404:服务器返回具有代码404的响应;

  • non_idempotent:通常,如果请求已经被发送到上游服务器(1.9.13),则具有非幂等方法的请求(POST,LOCK,PATCH)不被传递到下一个服务器;启用此选项明确允许重试此类请求;

  • off:禁用将请求传递到下一个服务器。

应该记住,将请求传递到下一个服务器是可能的,如果还没有发送到客户端。也就是说,如果在传送响应的中间发生错误或超时,则固定不可能。

该指令还定义了与服务器通信的失败尝试。错误,超时和invalid_header的情况始终被认为是不成功的尝试,即使它们没有在指令中指定。只有在指令中指定http_500,http_502,http_503和http_504的情况下,才会被视为不成功尝试。 http_403和http_404的情况绝不会被认为是失败的尝试。

将请求传递到下一个服务器可以通过尝试次数和时间来限制。

proxy_next_upstream_timeout

Syntax: proxy_next_upstream_timeout time;
Default:    proxy_next_upstream_timeout 0;
Context:    http, server, location
This directive appeared in version 1.7.5.

限制请求可以传递到下一个服务器的时间。 0值关闭此限制。

proxy_next_upstream_tries

Syntax: proxy_next_upstream_tries number;
Default:    proxy_next_upstream_tries 0;
Context:    http, server, location
This directive appeared in version 1.7.5.

限制将请求传递到下一个服务器的可能尝试次数。 0值关闭此限制。

你可能感兴趣的:(nginx proxy_next_upstream)