Nginx

ngx_http_api_module

ngx_http_api_module模块

  • 示例配置

所述ngx_http_api_module模块(1.13.3)提供REST API访问的各种状态信息,关于即时配置上游服务器组,并管理键-值对,而无需重新配置Nginx的。

该模块取代ngx_http_status_module和ngx_http_upstream_conf_module模块。此模块可作为我们商业订阅的一部分。

示例配置

http { upstream backend { zone http_backend 64k; server backend1.example.com weight=5; server backend2.example.com; } proxy_cache_path /data/nginx/cache_backend keys_zone=cache_backend:10m; server { server_name backend.example.com; location / { proxy_pass http://backend; proxy_cache cache_backend; health_check; } status_zone server_backend; } keyval_zone zone=one:32k state=one.keyval; keyval $arg_text $text zone=one; server { listen 127.0.0.1; location /api { api write=on; allow 127.0.0.1; deny all; } } } stream { upstream backend { zone stream_backend 64k; server backend1.example.com:12345 weight=5; server backend2.example.com:12345; } server { listen 127.0.0.1:12345; proxy_pass backend; status_zone server_backend; health_check; } }

所有API请求都在URI中包含受支持的API版本。使用此配置的API请求示例:

http://127.0.0.1/api/1/ http://127.0.0.1/api/1/nginx http://127.0.0.1/api/1/connections http://127.0.0.1/api/1/http/requests http://127.0.0.1/api/1/http/server_zones/server_backend http://127.0.0.1/api/1/http/caches/cache_backend http://127.0.0.1/api/1/http/upstreams/backend http://127.0.0.1/api/1/http/upstreams/backend/servers/ http://127.0.0.1/api/1/http/upstreams/backend/servers/1 http://127.0.0.1/api/1/http/keyvals/one?key=arg1 http://127.0.0.1/api/1/stream/ http://127.0.0.1/api/1/stream/server_zones/server_backend http://127.0.0.1/api/1/stream/upstreams/ http://127.0.0.1/api/1/stream/upstreams/backend http://127.0.0.1/api/1/stream/upstreams/backend/servers/1

指令

句法:api write = 开启|关闭;
默认:
语境:位置

打开周围位置的REST API接口。访问这个位置应该是有限的。

write参数确定API是只读还是读写。默认情况下,API是只读的。

所有API请求都应在URI中包含受支持的API版本。如果请求URI等于位置前缀,则返回支持的API版本列表。当前和唯一的API版本是“ 1”。

请求行中的可选“fields ”参数指定将输出所请求对象的哪些字段:

http://127.0.0.1/api/1/nginx?fields=version,build

端点

/

支持的方法:

  • GET - 根端点返回列表返回根端点列表。可能的回应:

- 200 - Success, returns an array of strings

/nginx

支持的方法:

  • GET - 返回nginx运行实例的状态返回nginx版本,构建名称,地址,配置重新加载的数量,主进程和工作进程的ID。请求参数: fieldsstring,可选)限制了nginx的运行实例字段将被输出。可能的回应:

- 200 - Success, returns [nginx](about:blank#def_nginx_object)

/processes

支持的方法:

  • GET - 返回nginx进程状态返回异常终止和重新生成的子进程的数量。可能的回应:

- 200 - Success, returns [Processes](about:blank#def_nginx_processes)

  • DELETE - 重置nginx进程统计信息重置异常终止和重新生成的子进程的计数器。可能的回应:

- 204 - Success

/connections

支持的方法:

  • GET - 返回客户连接统计返回客户连接的统计。请求参数: fieldsstring,可选)限制所述连接的统计信息的字段将被输出。可能的回应:

- 200 - Success, returns [Connections](about:blank#def_nginx_connections)

  • DELETE - 重置客户端连接统计信息重置接受和丢弃的客户端连接的统计信息 可能的回应:

- 204 - Success

/ssl

支持的方法:

  • GET - 返回SSL统计信息返回SSL统计信息。请求参数: fieldsstring,可选)限制了SSL统计领域将输出。可能的回应:

- 200 - Success, returns [SSL](about:blank#def_nginx_ssl_object)

  • DELETE - 重置SSL统计信息重置SSL握手和会话重用的计数器。可能的回应:

- 204 - Success

/slabs/

支持的方法:

  • GET - 返回所有板的状态使用板分配器返回每个共享内存区的板的状态。请求参数: fieldsstring,可选)限制了板坯区字段将被输出。如果“ fields”值为空,则只输出区域名称。可能的回应:

- 200 - Success, returns a collection of "[Shared memory zone with slab allocator](about:blank#def_nginx_slab_zone)" objects for all slabs

/slabs/{slabZoneName}共同为所有方法参数:slabZoneNamestring,必需)与slab分配器共享存储器区域的名称。

支持的方法:

  • GET - 返回slab的状态用slab分配器返回特定共享内存区域的slab的状态。请求参数: fieldsstring,可选)限制了板坯区的字段将被输出。可能的回应:

- 200 - Success, returns [Shared memory zone with slab allocator](about:blank#def_nginx_slab_zone) - 404 - Slab not found (`SlabNotFound`), returns [Error](about:blank#def_nginx_error)

  • DELETE- 重置板块统计信息重置每个内存插槽的“ reqs”和“ fails”度量标准。可能的回应:

- 204 - Success - 404 - Slab not found (`SlabNotFound`), returns [Error](about:blank#def_nginx_error) - 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error)

/http/

支持的方法:

  • GET - 返回HTTP相关端点列表返回第一级HTTP端点列表。可能的回应:

- 200 - Success, returns an array of strings

/http/requests

支持的方法:

  • GET - 返回HTTP请求统计信息返回客户端HTTP请求的状态。请求参数: fieldsstring,可选)限制了客户端的HTTP请求的统计数据字段将被输出。可能的回应:

- 200 - Success, returns [HTTP Requests](about:blank#def_nginx_http_requests)

  • DELETE - 重置HTTP请求统计信息重置总客户端HTTP请求的数量。可能的回应:

- 204 - Success - 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error)

/http/server_zones/

支持的方法:

  • GET - 返回所有HTTP服务器区域的状态返回每个HTTP服务器区域的状态信息。请求参数: fieldsstring,可选)限制了服务器区域的字段将被输出。如果“ fields”值为空,则仅输出服务器区域名称。可能的回应:

- 200 - Success, returns a collection of "[HTTP Server Zone](about:blank#def_nginx_http_server_zone)" objects for all http server zones

/http/server_zones/{httpServerZoneName}通用于所有方法的参数:httpServerZoneNamestring所需)的HTTP服务器区域的名称。

支持的方法:

  • GET - 返回HTTP服务器区域的状态返回特定HTTP服务器区域的状态。请求参数: fieldsstring,可选)限制了服务器区的字段将被输出。可能的回应:

- 200 - Success, returns [HTTP Server Zone](about:blank#def_nginx_http_server_zone) - 404 - Server zone not found (`ServerZoneNotFound`), returns [Error](about:blank#def_nginx_error)

  • DELETE - 重置HTTP服务器区域的统计信息重置特定HTTP服务器区域中接受和丢弃的请求,响应,接收和发送字节的统计信息。可能的回应:

- 204 - Success - 404 - Server zone not found (`ServerZoneNotFound`), returns [Error](about:blank#def_nginx_error) - 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error)

/http/caches/

支持的方法:

  • GET- 返回所有缓存的状态返回由proxy_cache_path和其他*_cache_path指令配置的每个缓存的状态。请求参数: fieldsstring,可选)限制了缓存区的字段将被输出。如果“ fields”值为空,则只输出缓存区域的名称。可能的回应:

- 200 - Success, returns a collection of "[HTTP Cache](about:blank#def_nginx_http_cache)" objects for all http caches

/http/caches/{httpCacheZoneName}通用于所有方法的参数:httpCacheZoneNamestring所需)的缓存区的名称。

支持的方法:

  • GET - 返回缓存的状态返回特定缓存的状态。请求参数: fieldsstring,可选)限制了缓存区的字段将被输出。可能的回应:

- 200 - Success, returns [HTTP Cache](about:blank#def_nginx_http_cache) - 404 - Cache not found (`CacheNotFound`), returns [Error](about:blank#def_nginx_error)

  • DELETE - 重置高速缓存统计信息重置特定高速缓存区域中高速缓存命中/未命中的统计信息。可能的回应:

- 204 - Success - 404 - Cache not found (`CacheNotFound`), returns [Error](about:blank#def_nginx_error) - 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error)

/http/upstreams/

支持的方法:

  • GET - 返回所有HTTP上游服务器组的状态返回每个HTTP上游服务器组及其服务器的状态。请求参数: fieldsstring,可选)限制了上游服务器组的字段将被输出。如果“ fields”值为空,则仅输出上游名称。可能的回应:

- 200 - Success, returns a collection of "[HTTP Upstream](about:blank#def_nginx_http_upstream)" objects for all http upstreams

/http/upstreams/{httpUpstreamName}/共同为所有方法参数:httpUpstreamNamestring所需)的HTTP上游服务器组的名称。

支持的方法:

  • GET - 返回HTTP上游服务器组的状态返回特定HTTP上游服务器组及其服务器的状态。请求参数: fieldsstring,可选)限制了上游服务器组的字段将被输出。可能的回应:

- 200 - Success, returns [HTTP Upstream](about:blank#def_nginx_http_upstream) - 400 - Upstream is static (`UpstreamStatic`), returns [Error](about:blank#def_nginx_error) - 404 - Upstream not found (`UpstreamNotFound`), returns [Error](about:blank#def_nginx_error)

  • DELETE - 重置HTTP上游服务器组的统计信息重置上游服务器组中每个上游服务器的统计信息和队列统计信息。可能的回应:

- 204 - Success - 400 - Upstream is static (`UpstreamStatic`), returns [Error](about:blank#def_nginx_error) - 404 - Upstream not found (`UpstreamNotFound`), returns [Error](about:blank#def_nginx_error) - 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error)

/http/upstreams/{httpUpstreamName}/servers/共同为所有方法参数:httpUpstreamNamestring所需)的上游服务器组的名称。

支持的方法:

  • GET - 返回HTTP上游服务器组中所有服务器的配置返回特定HTTP上游服务器组中每个服务器的配置。可能的回应:

- 200 - Success, returns an array of [HTTP Upstream Servers](about:blank#def_nginx_http_upstream_conf_server) - 400 - Upstream is static (`UpstreamStatic`), returns [Error](about:blank#def_nginx_error) - 404 - Upstream not found (`UpstreamNotFound`), returns [Error](about:blank#def_nginx_error)

  • POST - 将服务器添加到HTTP上游服务器组将新服务器添加到HTTP上游服务器组。服务器参数以JSON格式指定。请求参数:( postHttpUpstreamServerHTTP上游服务器,必需)新服务器的地址和JSON格式的其他可选参数。“ ID”,“ backup”和“ service”参数不能更改。可能的回应:

- 201 - Created, returns [HTTP Upstream Server](about:blank#def_nginx_http_upstream_conf_server) - 400 - Upstream is static (`UpstreamStatic`), invalid “_`parameter`_” value (`UpstreamConfFormatError`), missing “`server`” argument (`UpstreamConfFormatError`), unknown parameter “_`name`_” (`UpstreamConfFormatError`), nested object or list (`UpstreamConfFormatError`), “`error`” while parsing (`UpstreamBadAddress`), service upstream “`host`” may not have port (`UpstreamBadAddress`), service upstream “`host`” requires domain name (`UpstreamBadAddress`), invalid “`weight`” (`UpstreamBadWeight`), invalid “`max_conns`” (`UpstreamBadMaxConns`), invalid “`max_fails`” (`UpstreamBadMaxFails`), invalid “`fail_timeout`” (`UpstreamBadFailTimeout`), invalid “`slow_start`” (`UpstreamBadSlowStart`), route is too long (`UpstreamBadRoute`), “`service`” is empty (`UpstreamBadService`), no resolver defined to resolve (`UpstreamConfNoResolver`), upstream “_`name`_” has no backup (`UpstreamNoBackup`), upstream “_`name`_” memory exhausted (`UpstreamOutOfMemory`), returns [Error](about:blank#def_nginx_error) - 404 - Upstream not found (`UpstreamNotFound`), returns [Error](about:blank#def_nginx_error) - 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error) - 415 - JSON error (`JsonError`), returns [Error](about:blank#def_nginx_error)

/http/upstreams/{httpUpstreamName}/servers/{httpUpstreamServerId}共同为所有方法参数:httpUpstreamNamestring所需)上游服务器组的名称。httpUpstreamServerIdstring,必填)服务器的ID。

支持的方法:

  • GET - 返回HTTP上游服务器组中服务器的配置返回HTTP上游服务器组中特定服务器的配置。可能的回应:

- 200 - Success, returns [HTTP Upstream Server](about:blank#def_nginx_http_upstream_conf_server) - 400 - Upstream is static (`UpstreamStatic`), invalid server ID (`UpstreamBadServerId`), returns [Error](about:blank#def_nginx_error) - 404 - Upstream not found (`UpstreamNotFound`), server with ID “_`id`_” does not exist (`UpstreamServerNotFound`), returns [Error](about:blank#def_nginx_error)

  • PATCH - 修改HTTP上游服务器组中的服务器修改HTTP上游服务器组中特定服务器的设置。服务器参数以JSON格式指定。请求参数:( patchHttpUpstreamServerHTTP上游服务器,必需)服务器参数,以JSON格式指定。“ ID”,“ backup”和“ service”参数不能更改。可能的回应:

- 200 - Success, returns [HTTP Upstream Server](about:blank#def_nginx_http_upstream_conf_server) - 400 - Upstream is static (`UpstreamStatic`), invalid “_`parameter`_” value (`UpstreamConfFormatError`), unknown parameter “_`name`_” (`UpstreamConfFormatError`), nested object or list (`UpstreamConfFormatError`), “`error`” while parsing (`UpstreamBadAddress`), invalid “`server`” argument (`UpstreamBadAddress`), invalid server ID (`UpstreamBadServerId`), invalid “`weight`” (`UpstreamBadWeight`), invalid “`max_conns`” (`UpstreamBadMaxConns`), invalid “`max_fails`” (`UpstreamBadMaxFails`), invalid “`fail_timeout`” (`UpstreamBadFailTimeout`), invalid “`slow_start`” (`UpstreamBadSlowStart`), route is too long (`UpstreamBadRoute`), “`service`” is empty (`UpstreamBadService`), server “_`ID`_” address is immutable (`UpstreamServerImmutable`), server “`ID`” weight is immutable (`UpstreamServerWeightImmutable`), upstream “`name`” memory exhausted (`UpstreamOutOfMemory`), returns [Error](about:blank#def_nginx_error) - 404 - Upstream not found (`UpstreamNotFound`), server with ID “_`id`_” does not exist (`UpstreamServerNotFound`), returns [Error](about:blank#def_nginx_error) - 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error) - 415 - JSON error (`JsonError`), returns [Error](about:blank#def_nginx_error)

  • DELETE - 从HTTP上游服务器组中删除服务器从HTTP上游服务器组中删除服务器。可能的回应:

- 200 - Success, returns an array of [HTTP Upstream Servers](about:blank#def_nginx_http_upstream_conf_server) - 400 - Upstream is static (`UpstreamStatic`), invalid server ID (`UpstreamBadServerId`), server “_`id`_” not removable (`UpstreamServerImmutable`), returns [Error](about:blank#def_nginx_error) - 404 - Upstream not found (`UpstreamNotFound`), server with ID “_`id`_” does not exist (`UpstreamServerNotFound`), returns [Error](about:blank#def_nginx_error) - 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error)

/http/keyvals/

支持的方法:

  • GET - 从所有keyval区域返回键值对每个keyval共享内存区域返回键值对。请求参数: fieldsstring,可选)如果“ fields”值为空,那么只有KEYVAL区名称输出。可能的回应:

- 200 - Success, returns a collection of "[Keyval Shared Memory Zone](about:blank#def_nginx_http_keyval_zone)" objects for all http keyvals

/http/keyvals/{httpKeyvalZoneName}共同为所有方法参数:httpKeyvalZoneNamestring所需)一个KEYVAL共享存储器区域的名称。

支持的方法:

  • GET - 从keyval区域返回键值对返回存储在特定keyval共享内存区域中的键值对。请求参数: keystring,可选)获得从所述KEYVAL区一个特定的键-值对。可能的回应:

- 200 - Success, returns [Keyval Shared Memory Zone](about:blank#def_nginx_http_keyval_zone) - 404 - Keyval not found (`KeyvalNotFound`), keyval key not found (`KeyvalKeyNotFound`), returns [Error](about:blank#def_nginx_error)

  • POST - 向keyval区域添加键值对将新的键值对添加到keyval共享内存区域。如果keyval共享内存区域为空,则可以输入多个键值对。请求参数:( Key-valueKeyval Shared Memory Zone,必需)键值对以JSON格式指定。如果keyval共享内存区域为空,则可以输入多个键值对。可能的回应:

- 201 - Created - 400 - Key required (`KeyvalFormatError`), only one key can be added (`KeyvalFormatError`), nested object or list (`KeyvalFormatError`), returns [Error](about:blank#def_nginx_error) - 404 - Keyval not found (`KeyvalNotFound`), returns [Error](about:blank#def_nginx_error) - 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error) - 409 - Key already exists (`KeyvalKeyExists`), returns [Error](about:blank#def_nginx_error) - 415 - JSON error (`JsonError`), returns [Error](about:blank#def_nginx_error)

  • PATCH- 修改键值或删除键更改键值对中所选键的值或通过将键值设置为来删除键null。请求参数: httpKeyvalZoneKeyValue(Keyval共享内存区域,必需)以JSON格式指定键的新值。可能的回应:

- 204 - Success - 400 - Key required (`KeyvalFormatError`), only one key can be updated (`KeyvalFormatError`), nested object or list (`KeyvalFormatError`), returns [Error](about:blank#def_nginx_error) - 404 - Keyval not found (`KeyvalNotFound`), keyval key not found (`KeyvalKeyNotFound`), returns [Error](about:blank#def_nginx_error) - 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error) - 415 - JSON error (`JsonError`), returns [Error](about:blank#def_nginx_error)

  • DELETE - 清空keyval区域从keyval共享内存区域中删除所有键值对。可能的回应:

- 204 - Success - 404 - Keyval not found (`KeyvalNotFound`), returns [Error](about:blank#def_nginx_error) - 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error)

/stream/

支持的方法:

  • GET - 与流相关的端点的返回列表返回第一级流终端列表。可能的回应:

- 200 - Success, returns an array of strings

/stream/server_zones/

支持的方法:

  • GET - 返回所有流服务器区域的状态返回每个流服务器区域的状态信息。请求参数: fieldsstring,可选)限制了服务器区域的字段将被输出。如果“ fields”值为空,则仅输出服务器区域名称。可能的回应:

- 200 - Success, returns a collection of "[Stream Server Zone](about:blank#def_nginx_stream_server_zone)" objects for all stream server zones - 404 - [stream](../stream/ngx_stream_core_module#stream) not configured (`StreamNotConfigured`), returns [Error](about:blank#def_nginx_error)

/stream/server_zones/{streamServerZoneName}通用于所有方法的参数:streamServerZoneNamestring所需)流服务器区域的名称。

支持的方法:

  • GET - 返回流服务器区域的状态返回特定流服务器区域的状态。请求参数: fieldsstring,可选)限制了服务器区的字段将被输出。可能的回应:

- 200 - Success, returns [Stream Server Zone](about:blank#def_nginx_stream_server_zone) - 404 - Server zone not found (`ServerZoneNotFound`), [stream](../stream/ngx_stream_core_module#stream) not configured (`StreamNotConfigured`), returns [Error](about:blank#def_nginx_error)

  • DELETE - 重置流服务器区域的统计信息重置特定流服务器区域中接受和丢弃的连接,会话,接收和发送字节的统计信息。可能的回应:

- 204 - Success - 404 - Server zone not found (`ServerZoneNotFound`), [stream](../stream/ngx_stream_core_module#stream) not configured (`StreamNotConfigured`), returns [Error](about:blank#def_nginx_error) - 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error)

/stream/upstreams/

支持的方法:

  • GET - 返回所有流上游服务器组的状态返回每个流上游服务器组及其服务器的状态。请求参数: fieldsstring,可选)限制了上游服务器组的字段将被输出。如果“ fields”值为空,则仅输出上游名称。可能的回应:

- 200 - Success, returns a collection of "[Stream Upstream](about:blank#def_nginx_stream_upstream)" objects for all stream upstreams - 404 - [stream](../stream/ngx_stream_core_module#stream) not configured (`StreamNotConfigured`), returns [Error](about:blank#def_nginx_error)

/stream/upstreams/{streamUpstreamName}/共同为所有方法参数:streamUpstreamNamestring所需)流上游服务器组的名称。

支持的方法:

  • GET - 返回流上游服务器组的状态返回特定流上游服务器组及其服务器的状态。请求参数: fieldsstring,可选)限制了上游服务器组的字段将被输出。可能的回应:

- 200 - Success, returns [Stream Upstream](about:blank#def_nginx_stream_upstream) - 400 - Upstream is static (`UpstreamStatic`), returns [Error](about:blank#def_nginx_error) - 404 - Upstream not found (`UpstreamNotFound`), [stream](../stream/ngx_stream_core_module#stream) not configured (`StreamNotConfigured`), returns [Error](about:blank#def_nginx_error)

  • DELETE - 重置流上游服务器组的统计信息重置上游服务器组中每个上游服务器的统计信息。可能的回应:

- 204 - Success - 400 - Upstream is static (`UpstreamStatic`), returns [Error](about:blank#def_nginx_error) - 404 - Upstream not found (`UpstreamNotFound`), [stream](../stream/ngx_stream_core_module#stream) not configured (`StreamNotConfigured`), returns [Error](about:blank#def_nginx_error) - 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error)

/stream/upstreams/{streamUpstreamName}/servers/共同为所有方法参数:streamUpstreamNamestring所需)的上游服务器组的名称。

支持的方法:

  • GET - 返回流上游服务器组中所有服务器的配置返回特定流上游服务器组中每个服务器的配置。可能的回应:

- 200 - Success, returns an array of [Stream Upstream Servers](about:blank#def_nginx_stream_upstream_conf_server) - 400 - Upstream is static (`UpstreamStatic`), returns [Error](about:blank#def_nginx_error) - 404 - Upstream not found (`UpstreamNotFound`), [stream](../stream/ngx_stream_core_module#stream) not configured (`StreamNotConfigured`), returns [Error](about:blank#def_nginx_error)

  • POST - 将服务器添加到流上游服务器组,将新服务器添加到流上游服务器组。服务器参数以JSON格式指定。请求参数:( postStreamUpstreamServer流上游服务器,必需)新服务器的地址和JSON格式的其他可选参数。“ ID”,“ backup”和“ service”参数不能更改。可能的回应:

- 201 - Created, returns [Stream Upstream Server](about:blank#def_nginx_stream_upstream_conf_server) - 400 - Upstream is static (`UpstreamStatic`), invalid “_`parameter`_” value (`UpstreamConfFormatError`), missing “`server`” argument (`UpstreamConfFormatError`), unknown parameter “_`name`_” (`UpstreamConfFormatError`), nested object or list (`UpstreamConfFormatError`), “`error`” while parsing (`UpstreamBadAddress`), no port in server “`host`” (`UpstreamBadAddress`), service upstream “`host`” may not have port (`UpstreamBadAddress`), service upstream “`host`” requires domain name (`UpstreamBadAddress`), invalid “`weight`” (`UpstreamBadWeight`), invalid “`max_conns`” (`UpstreamBadMaxConns`), invalid “`max_fails`” (`UpstreamBadMaxFails`), invalid “`fail_timeout`” (`UpstreamBadFailTimeout`), invalid “`slow_start`” (`UpstreamBadSlowStart`), “`service`” is empty (`UpstreamBadService`), no resolver defined to resolve (`UpstreamConfNoResolver`), upstream “_`name`_” has no backup (`UpstreamNoBackup`), upstream “_`name`_” memory exhausted (`UpstreamOutOfMemory`), returns [Error](about:blank#def_nginx_error) - 404 - Upstream not found (`UpstreamNotFound`), [stream](../stream/ngx_stream_core_module#stream) not configured (`StreamNotConfigured`), returns [Error](about:blank#def_nginx_error) - 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error) - 415 - JSON error (`JsonError`), returns [Error](about:blank#def_nginx_error)

/stream/upstreams/{streamUpstreamName}/servers/{streamUpstreamServerId}共同为所有方法参数:streamUpstreamNamestring所需)上游服务器组的名称。streamUpstreamServerIdstring,必填)服务器的ID。

支持的方法:

  • GET - 返回流上游服务器组中服务器的配置返回流上游服务器组中特定服务器的配置。可能的回应:

- 200 - Success, returns [Stream Upstream Server](about:blank#def_nginx_stream_upstream_conf_server) - 400 - Upstream is static (`UpstreamStatic`), invalid server ID (`UpstreamBadServerId`), returns [Error](about:blank#def_nginx_error) - 404 - Upstream not found (`UpstreamNotFound`), server with ID “_`id`_” does not exist (`UpstreamServerNotFound`), [stream](../stream/ngx_stream_core_module#stream) not configured (`StreamNotConfigured`), returns [Error](about:blank#def_nginx_error)

  • PATCH - 修改流上游服务器组中的服务器,修改流上游服务器组中特定服务器的设置。服务器参数以JSON格式指定。请求参数:( patchStreamUpstreamServer流上游服务器,必需)服务器参数,以JSON格式指定。“ ID”,“ backup”和“ service”参数不能更改。可能的回应:

- 200 - Success, returns [Stream Upstream Server](about:blank#def_nginx_stream_upstream_conf_server) - 400 - Upstream is static (`UpstreamStatic`), invalid “_`parameter`_” value (`UpstreamConfFormatError`), unknown parameter “_`name`_” (`UpstreamConfFormatError`), nested object or list (`UpstreamConfFormatError`), “`error`” while parsing (`UpstreamBadAddress`), invalid “`server`” argument (`UpstreamBadAddress`), no port in server “`host`” (`UpstreamBadAddress`), invalid server ID (`UpstreamBadServerId`), invalid “`weight`” (`UpstreamBadWeight`), invalid “`max_conns`” (`UpstreamBadMaxConns`), invalid “`max_fails`” (`UpstreamBadMaxFails`), invalid “`fail_timeout`” (`UpstreamBadFailTimeout`), invalid “`slow_start`” (`UpstreamBadSlowStart`), “`service`” is empty (`UpstreamBadService`), server “_`ID`_” address is immutable (`UpstreamServerImmutable`), server “_`ID`_” weight is immutable (`UpstreamServerWeightImmutable`), upstream “`name`” memory exhausted (`UpstreamOutOfMemory`), returns [Error](about:blank#def_nginx_error) - 404 - Upstream not found (`UpstreamNotFound`), server with ID “_`id`_” does not exist (`UpstreamServerNotFound`), [stream](../stream/ngx_stream_core_module#stream) not configured (`StreamNotConfigured`), returns [Error](about:blank#def_nginx_error) - 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error) - 415 - JSON error (`JsonError`), returns [Error](about:blank#def_nginx_error)

  • DELETE - 从流上游服务器组中删除服务器,从流服务器组中删除服务器。可能的回应:

- 200 - Success, returns an array of [Stream Upstream Servers](about:blank#def_nginx_stream_upstream_conf_server) - 400 - Upstream is static (`UpstreamStatic`), invalid server ID (`UpstreamBadServerId`), server “_`id`_” not removable (`UpstreamServerImmutable`), returns [Error](about:blank#def_nginx_error) - 404 - Upstream not found (`UpstreamNotFound`), server with ID “_`id`_” does not exist (`UpstreamServerNotFound`), [stream](../stream/ngx_stream_core_module#stream) not configured (`StreamNotConfigured`), returns [Error](about:blank#def_nginx_error) - 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error)

响应对象

  • nginx:关于nginx的一般信息 versionstring)Nginx的版本。 buildstring)nginx构建的名称。 addressstring)接受状态请求的服务器地址。 generationinteger)配置重新加载的总数。 load_timestampstring)最后一次重新载入配置的时间,以Epoch以来的毫秒数表示。 timestampstring)Epoch以来的当前时间(以毫秒为单位)。 pidinteger)处理状态请求的工作进程的ID。 ppidinteger)启动辅助进程的主进程的标识。例如:{“nginx”:{“version”:“1.13.3”,“build”:“nginx-plus-r12-p3”,“address”:“206.251.255.64”,“generation”:2,“load_timestamp “:”2017-07-07T11:09:21.594Z“,”timestamp“:”2017-07-11T09:31:13.477Z“,”pid“:32212,”ppid“:32210}}