# proxy\_next\_upstream

在配置Nginx服务器反向代理功能时，如果使用<mark style="color:blue;">**upstream**</mark>指令配置了一组服务器作为被代理服务器，服务器组中各服务器的访问规则遵循upstream指令配置的轮询规则，同时可以使用<mark style="color:blue;">**proxy\_next\_upstream**</mark>指令<mark style="color:blue;">**配置在发生哪些异常情况时，将请求顺次交由下一个组内服务器处理**</mark>。该指令的语法结构为：

```nginx
proxy_next_upstream status ...;
```

其中，<mark style="color:blue;">**status**</mark>为设置的**服务器返回状态**，可以是一个或者多个。这些状态包括：

* **error**，在建立连接、向被代理的服务器发送请求或者读取响应头时服务器发生连接错误。
* **timeout**，在建立连接、向被代理的服务器发送请求或者读取响应头时服务器发生连接超时。
* **invalid\_header**，被代理的服务器返回的响应头为空或者无效。
* **http\_500** | **http\_502** | **http\_503** | **http\_504** | **http\_404**，被代理的服务器返回**500**、**502**、**503**、**504**或者**404**状态代码。
* **off**，无法将请求发送给被代理的服务器。

{% hint style="warning" %} <mark style="color:orange;">**注意：**</mark>

**在与被代理的服务器**<mark style="color:orange;">**进行数据传输的过程中**</mark>**发生错误的请求，不包含在该指令支持的状态之内。**
{% endhint %}
