status = NGX_HTTP_INTERNAL_SERVER_ERROR;break;caseNGX_HTTP_UPSTREAM_FT_HTTP_503: status = NGX_HTTP_SERVICE_UNAVAILABLE;break;/* * NGX_HTTP_UPSTREAM_FT_BUSY_LOCK and NGX_HTTP_UPSTREAM_FT_MAX_WAITING * never reach here */default: status = NGX_HTTP_BAD_GATEWAY; } 502 与 503 的 逻辑分岔...
456upstream_bytes_sent=0, 294 upstream_cache_status=-upstream_connect_time=-, 0.000 upstream_cookie_a=-upstream_header_time=-, 0.001 upstream_http_server=nginx/1.23.0 upstream_response_length=0, 224upstream_response_time=0.001, 0.001 upstream_status=502, 200upstream_trailer_a=- ...
语法: proxy_next_upstream error | timeout | invalid_header | http_500 | http_502 | http_503 | http_504 |http_404 | off ...; 默认值: proxy_next_upstream error timeout; 上下文: http, server, location 其中: error 表示和后端服务器建立连接时,或者向后端服务器发送请求时,或者从后端服务器...
语法: proxy_next_upstream error | timeout | invalid_header | http_500 | http_502 | http_503 | http_504 |http_404 | off ...; 默认值: proxy_next_upstream error timeout; 上下文: http, server, location 其中: error 表示和后端服务器建立连接时,或者向后端服务器发送请求时,或者从后端服务器...
但是查看web的运行日志和服务状态service xx status,当出现502时,web应用的运行都是正常的,并没有重启或是宕机,所以排除web应用问题,那会不会是之前有其他异常导致这个502!?继续分析了出现502之前的日志,果然,在502之前都有一个500异常,并且这个异常很有频率的出现。
$upstream_status保留从上游服务器获得的响应的状态码。几个响应的状态代码由逗号和冒号分隔,如$upstream_addr变量中的地址。如果无法选择服务器,则该变量会保留 502(错误网关)状态代码。 $upstream_trailer_[name]保留从上游服务器(1.13.10)获得的响应末尾的字段。
3)所有节点失效后nginx将重新恢复所有节点进行探测如果探测所有节点均失效,备机也为失效时,那么nginx会对所有节点恢复为有效,重新尝试探测有效节点,如果探测到有效节点则返回正确节点内容,如果还是全部错误,那么继续探测下去,当没有正确信息时,节点失效时默认返回状态为502,但是下次访问节点时会继续探测正确节点,直到找到正...
如果探测所有节点均失效,备机也为失效时,那么nginx会对所有节点恢复为有效,重新尝试探测有效节点,如果探测到有效节点则返回正确节点内容,如果还是全部错误,那么继续探测下去,当没有正确信息时,节点失效时默认返回状态为502,但是下次访问节点时会继续探测正确节点,直到找到正确的为止。
变量名:$upstream_cache_status 功能:该变量出现在 Nginx 0.8.3 版本中, 可能的值如下: MISS - 缓存中未被命中 EXPIRED - 生存期期满,请求被传递到后端服务器 UPDATING - 生存期满,陈旧的响应被使用,因为proxy/fastcgi_cache_use_stale 升级 STALE - 生存期期满,陈旧的响应被使用,因为 proxy/fastcgi_cache_us...
upstreamstatus保留从上游服务器获得的响应的状态码。几个响应的状态代码由逗号和冒号分隔,如upstream_addr 变量中的地址。如果无法选择服务器,则该变量会保留 502(错误网关)状态代码。 $upstream_trailer_[name]保留从上游服务器(1.13.10)获得的响应末尾的字段。