# HG changeset patch # User Maxim Dounin # Date 1707930349 -10800 # Node ID 9eadb98ec770c77c315a70a93583c1c7c1ee5401 # Parent 19e4897acb84dff2ce3f6593b44030c6588fefe5 Free nginx: removed commercial version documentation. diff --git a/GNUmakefile b/GNUmakefile --- a/GNUmakefile +++ b/GNUmakefile @@ -170,10 +170,6 @@ xslt/%.xslt: xsls/%.xsls $(call XSLScript, $<, $@) -genapi: - $(MAKE) -C yaml - - images: \ binary/books/nginx_cookbook.jpg \ binary/books/nginx_http_server_3rd_ed.jpg \ diff --git a/xml/en/GNUmakefile b/xml/en/GNUmakefile --- a/xml/en/GNUmakefile +++ b/xml/en/GNUmakefile @@ -39,9 +39,7 @@ REFS = \ ngx_core_module \ http/ngx_http_access_module \ http/ngx_http_addition_module \ - http/ngx_http_api_module \ http/ngx_http_auth_basic_module \ - http/ngx_http_auth_jwt_module \ http/ngx_http_auth_request_module \ http/ngx_http_autoindex_module \ http/ngx_http_browser_module \ @@ -50,7 +48,6 @@ REFS = \ http/ngx_http_dav_module \ http/ngx_http_empty_gif_module \ http/ngx_http_fastcgi_module \ - http/ngx_http_f4f_module \ http/ngx_http_flv_module \ http/ngx_http_geo_module \ http/ngx_http_geoip_module \ @@ -59,12 +56,9 @@ REFS = \ http/ngx_http_gzip_module \ http/ngx_http_gzip_static_module \ http/ngx_http_headers_module \ - http/ngx_http_hls_module \ http/ngx_http_image_filter_module \ http/ngx_http_index_module \ - http/ngx_http_internal_redirect_module \ http/ngx_http_js_module \ - http/ngx_http_keyval_module \ http/ngx_http_limit_conn_module \ http/ngx_http_limit_req_module \ http/ngx_http_log_module \ @@ -74,7 +68,6 @@ REFS = \ http/ngx_http_mp4_module \ http/ngx_http_perl_module \ http/ngx_http_proxy_module \ - http/ngx_http_proxy_protocol_vendor_module \ http/ngx_http_random_index_module \ http/ngx_http_realip_module \ http/ngx_http_referer_module \ @@ -83,16 +76,12 @@ REFS = \ http/ngx_http_secure_link_module \ http/ngx_http_slice_module \ http/ngx_http_spdy_module \ - http/ngx_http_session_log_module \ http/ngx_http_split_clients_module \ http/ngx_http_ssi_module \ http/ngx_http_ssl_module \ - http/ngx_http_status_module \ http/ngx_http_stub_status_module \ http/ngx_http_sub_module \ http/ngx_http_upstream_module \ - http/ngx_http_upstream_conf_module \ - http/ngx_http_upstream_hc_module \ http/ngx_http_userid_module \ http/ngx_http_uwsgi_module \ http/ngx_http_v2_module \ @@ -111,14 +100,10 @@ REFS = \ stream/ngx_stream_geo_module \ stream/ngx_stream_geoip_module \ stream/ngx_stream_js_module \ - stream/ngx_stream_keyval_module \ stream/ngx_stream_limit_conn_module \ stream/ngx_stream_log_module \ stream/ngx_stream_map_module \ - stream/ngx_stream_mqtt_filter_module \ - stream/ngx_stream_mqtt_preread_module \ stream/ngx_stream_proxy_module \ - stream/ngx_stream_proxy_protocol_vendor_module \ stream/ngx_stream_realip_module \ stream/ngx_stream_return_module \ stream/ngx_stream_set_module \ @@ -126,12 +111,8 @@ REFS = \ stream/ngx_stream_ssl_module \ stream/ngx_stream_ssl_preread_module \ stream/ngx_stream_upstream_module \ - stream/ngx_stream_upstream_hc_module \ - stream/ngx_stream_zone_sync_module \ stream/stream_processing \ ngx_google_perftools_module \ - ngx_mgmt_module \ - ngx_otel_module \ dev/development_guide \ njs/index \ njs/changes \ diff --git a/xml/en/docs/http/ngx_http_access_module.xml b/xml/en/docs/http/ngx_http_access_module.xml --- a/xml/en/docs/http/ngx_http_access_module.xml +++ b/xml/en/docs/http/ngx_http_access_module.xml @@ -10,7 +10,7 @@ + rev="5">
@@ -21,9 +21,8 @@ limiting access to certain client addres Access can also be limited by -password, by the -result of subrequest, -or by JWT. +password or by the +result of subrequest. Simultaneous limitation of access by address and by password is controlled by the directive. diff --git a/xml/en/docs/http/ngx_http_api_module.xml b/xml/en/docs/http/ngx_http_api_module.xml deleted file mode 100644 --- a/xml/en/docs/http/ngx_http_api_module.xml +++ /dev/null @@ -1,4587 +0,0 @@ - - - - - - - - -
- - -The ngx_http_api_module module (1.13.3) provides REST API -for accessing various status information, -configuring upstream server groups on-the-fly, and managing -key-value pairs -without the need of reconfiguring nginx. - - - - -The module supersedes the -ngx_http_status_module and -ngx_http_upstream_conf_module -modules. - - - - -When using the PATCH or POST methods, -make sure that the payload does not exceed the -buffer size -for reading the client request body, otherwise, the - -error may be returned. - - - - -This module is available as part of our -commercial subscription. - - - -
- - -
- - - -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; - } -} - -All API requests include -a supported API version in the URI. -Examples of API requests with this configuration: - -http://127.0.0.1/api/9/ -http://127.0.0.1/api/9/nginx -http://127.0.0.1/api/9/connections -http://127.0.0.1/api/9/workers -http://127.0.0.1/api/9/http/requests -http://127.0.0.1/api/9/http/server_zones/server_backend -http://127.0.0.1/api/9/http/caches/cache_backend -http://127.0.0.1/api/9/http/upstreams/backend -http://127.0.0.1/api/9/http/upstreams/backend/servers/ -http://127.0.0.1/api/9/http/upstreams/backend/servers/1 -http://127.0.0.1/api/9/http/keyvals/one?key=arg1 -http://127.0.0.1/api/9/stream/ -http://127.0.0.1/api/9/stream/server_zones/server_backend -http://127.0.0.1/api/9/stream/upstreams/ -http://127.0.0.1/api/9/stream/upstreams/backend -http://127.0.0.1/api/9/stream/upstreams/backend/servers/1 - - - -
- - -
- - - -[write=on|off] - -location - - -Turns on the REST API interface in the surrounding location. -Access to this location should be -limited. - - - -The write parameter determines whether the API -is read-only or read-write. -By default, the API is read-only. - - - -All API requests should contain a supported API version in the URI. -If the request URI equals the location prefix, -the list of supported API versions is returned. -The current API version is “9”. - - - -The optional “fields” argument in the request line -specifies which fields of the requested objects will be output: - -http://127.0.0.1/api/9/nginx?fields=version,build - - - - - - - -zone - -server -location -if in location -1.13.12 - - -Enables collection of virtual -http -or -stream -server status information in the specified zone. -Several servers may share the same zone. - - - -Starting from 1.17.0, status information can be collected -per . -The special value off disables statistics collection -in nested location blocks. -Note that the statistics is collected -in the context of a location where processing ends. -It may be different from the original location, if an -internal -redirect happens during request processing. - - - - -
- -
- - - - - -The /workers/ data -were added in version 9. - - - -Detailed failure counters were added to SSL statistics -in version 8 (1.23.2). - - - -The ssl data -for each HTTP -upstream, -server zone, -and stream -upstream, -server zone, -were added in version 8 (1.21.6). - - - -The codes data -in responses for each HTTP -upstream, -server zone, and -location zone -were added in version 7. - - - -The /stream/limit_conns/ data -were added in version 6. - - - -The /http/limit_conns/ data -were added in version 6. - - - -The /http/limit_reqs/ data -were added in version 6. - - - -The “expire” parameter of a -key-value pair can be -set or -changed -since version 5. - - - -The /resolvers/ data -were added in version 5. - - - -The /http/location_zones/ data -were added in version 5. - - - -The path and method fields of -nginx error object -were removed in version 4. -These fields continue to exist in earlier api versions, -but show an empty value. - - - -The /stream/zone_sync/ data -were added in version 3. - - - -The drain parameter -was added in version 2. - - - -The /stream/keyvals/ data -were added in version 2. - - - - - -
-
- - - -/ - - -Supported methods: - - -GET - Return list of root endpoints -Returns a list of root endpoints. - -Possible responses: - - -200 - Success, returns an array of strings -404 - Unknown version (UnknownVersion), returns Error - - - - - -/nginx - - -Supported methods: - - -GET - Return status of nginx running instance -Returns nginx version, build name, address, number of configuration reloads, IDs of master and worker processes. - -Request parameters: - -fields -(string, optional) - -Limits which fields of nginx running instance will be output. - - - -Possible responses: - - -200 - Success, returns nginx -404 - Unknown version (UnknownVersion), returns Error - - - - - -/processes - - -Supported methods: - - -GET - Return nginx processes status -Returns the number of abnormally terminated and respawned child processes. - -Possible responses: - - -200 - Success, returns Processes -404 - Unknown version (UnknownVersion), returns Error - - - -DELETE - Reset nginx processes statistics -Resets counters of abnormally terminated and respawned child processes. - -Possible responses: - - -204 - Success -404 - Unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/connections - - -Supported methods: - - -GET - Return client connections statistics -Returns statistics of client connections. - -Request parameters: - -fields -(string, optional) - -Limits which fields of the connections statistics will be output. - - - -Possible responses: - - -200 - Success, returns Connections -404 - Unknown version (UnknownVersion), returns Error - - - -DELETE - Reset client connections statistics -Resets statistics of accepted and dropped client connections. - -Possible responses: - - -204 - Success -404 - Unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/slabs/ - - -Supported methods: - - -GET - Return status of all slabs -Returns status of slabs for each shared memory zone with slab allocator. - -Request parameters: - -fields -(string, optional) - -Limits which fields of slab zones will be output. If the “fields” value is empty, then only zone names will be output. - - - -Possible responses: - - -200 - Success, returns a collection of "Shared memory zone with slab allocator" objects for all slabs -404 - Unknown version (UnknownVersion), returns Error - - - - - -/slabs/{slabZoneName} - - -Parameters common for all methods: - -slabZoneName -(string, required) - -The name of the shared memory zone with slab allocator. - -Supported methods: - - -GET - Return status of a slab -Returns status of slabs for a particular shared memory zone with slab allocator. - -Request parameters: - -fields -(string, optional) - -Limits which fields of the slab zone will be output. - - - -Possible responses: - - -200 - Success, returns Shared memory zone with slab allocator -404 - Slab not found (SlabNotFound), -unknown version (UnknownVersion), returns Error - - - -DELETE - Reset slab statistics -Resets the “reqs” and “fails” metrics for each memory slot. - -Possible responses: - - -204 - Success -404 - Slab not found (SlabNotFound), -unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/http/ - - -Supported methods: - - -GET - Return list of HTTP-related endpoints -Returns a list of first level HTTP endpoints. - -Possible responses: - - -200 - Success, returns an array of strings -404 - Unknown version (UnknownVersion), returns Error - - - - - -/http/requests - - -Supported methods: - - -GET - Return HTTP requests statistics -Returns status of client HTTP requests. - -Request parameters: - -fields -(string, optional) - -Limits which fields of client HTTP requests statistics will be output. - - - -Possible responses: - - -200 - Success, returns HTTP Requests -404 - Unknown version (UnknownVersion), returns Error - - - -DELETE - Reset HTTP requests statistics -Resets the number of total client HTTP requests. - -Possible responses: - - -204 - Success -404 - Unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/http/server_zones/ - - -Supported methods: - - -GET - Return status of all HTTP server zones -Returns status information for each HTTP server zone. - -Request parameters: - -fields -(string, optional) - -Limits which fields of server zones will be output. If the “fields” value is empty, then only server zone names will be output. - - - -Possible responses: - - -200 - Success, returns a collection of "HTTP Server Zone" objects for all HTTP server zones -404 - Unknown version (UnknownVersion), returns Error - - - - - -/http/server_zones/{httpServerZoneName} - - -Parameters common for all methods: - -httpServerZoneName -(string, required) - -The name of an HTTP server zone. - -Supported methods: - - -GET - Return status of an HTTP server zone -Returns status of a particular HTTP server zone. - -Request parameters: - -fields -(string, optional) - -Limits which fields of the server zone will be output. - - - -Possible responses: - - -200 - Success, returns HTTP Server Zone -404 - Server zone not found (ServerZoneNotFound), -unknown version (UnknownVersion), returns Error - - - -DELETE - Reset statistics for an HTTP server zone -Resets statistics of accepted and discarded requests, responses, received and sent bytes, counters of SSL handshakes and session reuses in a particular HTTP server zone. - -Possible responses: - - -204 - Success -404 - Server zone not found (ServerZoneNotFound), -unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/http/location_zones/ - - -Supported methods: - - -GET - Return status of all HTTP location zones -Returns status information for each HTTP location zone. - -Request parameters: - -fields -(string, optional) - -Limits which fields of location zones will be output. If the “fields” value is empty, then only zone names will be output. - - - -Possible responses: - - -200 - Success, returns a collection of "HTTP Location Zone" objects for all HTTP location zones -404 - Unknown version (UnknownVersion), returns Error - - - - - -/http/location_zones/{httpLocationZoneName} - - -Parameters common for all methods: - -httpLocationZoneName -(string, required) - -The name of an HTTP location zone. - -Supported methods: - - -GET - Return status of an HTTP location zone -Returns status of a particular HTTP location zone. - -Request parameters: - -fields -(string, optional) - -Limits which fields of the location zone will be output. - - - -Possible responses: - - -200 - Success, returns HTTP Location Zone -404 - Location zone not found (LocationZoneNotFound), -unknown version (UnknownVersion), returns Error - - - -DELETE - Reset statistics for a location zone. -Resets statistics of accepted and discarded requests, responses, received and sent bytes in a particular location zone. - -Possible responses: - - -204 - Success -404 - Location zone not found (LocationZoneNotFound), -unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/http/caches/ - - -Supported methods: - - -GET - Return status of all caches -Returns status of each cache configured by proxy_cache_path and other “*_cache_path” directives. - -Request parameters: - -fields -(string, optional) - -Limits which fields of cache zones will be output. If the “fields” value is empty, then only names of cache zones will be output. - - - -Possible responses: - - -200 - Success, returns a collection of "HTTP Cache" objects for all HTTP caches -404 - Unknown version (UnknownVersion), returns Error - - - - - -/http/caches/{httpCacheZoneName} - - -Parameters common for all methods: - -httpCacheZoneName -(string, required) - -The name of the cache zone. - -Supported methods: - - -GET - Return status of a cache -Returns status of a particular cache. - -Request parameters: - -fields -(string, optional) - -Limits which fields of the cache zone will be output. - - - -Possible responses: - - -200 - Success, returns HTTP Cache -404 - Cache not found (CacheNotFound), -unknown version (UnknownVersion), returns Error - - - -DELETE - Reset cache statistics -Resets statistics of cache hits/misses in a particular cache zone. - -Possible responses: - - -204 - Success -404 - Cache not found (CacheNotFound), -unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/http/limit_conns/ - - -Supported methods: - - -GET - Return status of all HTTP limit_conn zones -Returns status information for each HTTP limit_conn zone. - -Request parameters: - -fields -(string, optional) - -Limits which fields of limit_conn zones will be output. If the “fields” value is empty, then only zone names will be output. - - - -Possible responses: - - -200 - Success, returns a collection of "HTTP Connections Limiting" objects for all HTTP limit conns -404 - Unknown version (UnknownVersion), returns Error - - - - - -/http/limit_conns/{httpLimitConnZoneName} - - -Parameters common for all methods: - -httpLimitConnZoneName -(string, required) - -The name of a limit_conn zone. - -Supported methods: - - -GET - Return status of an HTTP limit_conn zone -Returns status of a particular HTTP limit_conn zone. - -Request parameters: - -fields -(string, optional) - -Limits which fields of the limit_conn zone will be output. - - - -Possible responses: - - -200 - Success, returns HTTP Connections Limiting -404 - limit_conn not found (LimitConnNotFound), -unknown version (UnknownVersion), returns Error - - - -DELETE - Reset statistics for an HTTP limit_conn zone -Resets the connection limiting statistics. - -Possible responses: - - -204 - Success -404 - limit_conn not found (LimitConnNotFound), -unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/http/limit_reqs/ - - -Supported methods: - - -GET - Return status of all HTTP limit_req zones -Returns status information for each HTTP limit_req zone. - -Request parameters: - -fields -(string, optional) - -Limits which fields of limit_req zones will be output. If the “fields” value is empty, then only zone names will be output. - - - -Possible responses: - - -200 - Success, returns a collection of "HTTP Requests Rate Limiting" objects for all HTTP limit reqs -404 - Unknown version (UnknownVersion), returns Error - - - - - -/http/limit_reqs/{httpLimitReqZoneName} - - -Parameters common for all methods: - -httpLimitReqZoneName -(string, required) - -The name of a limit_req zone. - -Supported methods: - - -GET - Return status of an HTTP limit_req zone -Returns status of a particular HTTP limit_req zone. - -Request parameters: - -fields -(string, optional) - -Limits which fields of the limit_req zone will be output. - - - -Possible responses: - - -200 - Success, returns HTTP Requests Rate Limiting -404 - limit_req not found (LimitReqNotFound), -unknown version (UnknownVersion), returns Error - - - -DELETE - Reset statistics for an HTTP limit_req zone -Resets the requests limiting statistics. - -Possible responses: - - -204 - Success -404 - limit_req not found (LimitReqNotFound), -unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/http/upstreams/ - - -Supported methods: - - -GET - Return status of all HTTP upstream server groups -Returns status of each HTTP upstream server group and its servers. - -Request parameters: - -fields -(string, optional) - -Limits which fields of upstream server groups will be output. If the “fields” value is empty, only names of upstreams will be output. - - - -Possible responses: - - -200 - Success, returns a collection of "HTTP Upstream" objects for all HTTP upstreams -404 - Unknown version (UnknownVersion), returns Error - - - - - -/http/upstreams/{httpUpstreamName}/ - - -Parameters common for all methods: - -httpUpstreamName -(string, required) - -The name of an HTTP upstream server group. - -Supported methods: - - -GET - Return status of an HTTP upstream server group -Returns status of a particular HTTP upstream server group and its servers. - -Request parameters: - -fields -(string, optional) - -Limits which fields of the upstream server group will be output. - - - -Possible responses: - - -200 - Success, returns HTTP Upstream -400 - Upstream is static (UpstreamStatic), returns Error -404 - Unknown version (UnknownVersion), -upstream not found (UpstreamNotFound), returns Error - - - -DELETE - Reset statistics of an HTTP upstream server group -Resets the statistics for each upstream server in an upstream server group and queue statistics. - -Possible responses: - - -204 - Success -400 - Upstream is static (UpstreamStatic), returns Error -404 - Unknown version (UnknownVersion), -upstream not found (UpstreamNotFound), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/http/upstreams/{httpUpstreamName}/servers/ - - -Parameters common for all methods: - -httpUpstreamName -(string, required) - -The name of an upstream server group. - -Supported methods: - - -GET - Return configuration of all servers in an HTTP upstream server group -Returns configuration of each server in a particular HTTP upstream server group. - -Possible responses: - - -200 - Success, returns an array of HTTP Upstream Servers -400 - Upstream is static (UpstreamStatic), returns Error -404 - Unknown version (UnknownVersion), -upstream not found (UpstreamNotFound), returns Error - - - -POST - Add a server to an HTTP upstream server group -Adds a new server to an HTTP upstream server group. Server parameters are specified in the JSON format. - -Request parameters: - -postHttpUpstreamServer -(HTTP Upstream Server, required) - -Address of a new server and other optional parameters in the JSON format. The “ID”, “backup”, and “service” parameters cannot be changed. - - - -Possible responses: - - -201 - Created, returns HTTP Upstream 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), -reading request body failed BodyReadError), -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 -404 - Unknown version (UnknownVersion), -upstream not found (UpstreamNotFound), returns Error -405 - Method disabled (MethodDisabled), returns Error -409 - Entry exists (EntryExists), returns Error -415 - JSON error (JsonError), returns Error - - - - - -/http/upstreams/{httpUpstreamName}/servers/{httpUpstreamServerId} - - -Parameters common for all methods: - -httpUpstreamName -(string, required) - -The name of the upstream server group. -httpUpstreamServerId -(string, required) - -The ID of the server. - -Supported methods: - - -GET - Return configuration of a server in an HTTP upstream server group -Returns configuration of a particular server in the HTTP upstream server group. - -Possible responses: - - -200 - Success, returns HTTP Upstream Server -400 - Upstream is static (UpstreamStatic), -invalid server ID (UpstreamBadServerId), returns Error -404 - Server with ID “id” does not exist (UpstreamServerNotFound), -unknown version (UnknownVersion), -upstream not found (UpstreamNotFound), returns Error - - - -PATCH - Modify a server in an HTTP upstream server group -Modifies settings of a particular server in an HTTP upstream server group. Server parameters are specified in the JSON format. - -Request parameters: - -patchHttpUpstreamServer -(HTTP Upstream Server, required) - -Server parameters, specified in the JSON format. The “ID”, “backup”, and “service” parameters cannot be changed. - - - -Possible responses: - - -200 - Success, returns HTTP Upstream 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), -reading request body failed BodyReadError), -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 -404 - Server with ID “id” does not exist (UpstreamServerNotFound), -unknown version (UnknownVersion), -upstream not found (UpstreamNotFound), returns Error -405 - Method disabled (MethodDisabled), returns Error -415 - JSON error (JsonError), returns Error - - - -DELETE - Remove a server from an HTTP upstream server group -Removes a server from an HTTP upstream server group. - -Possible responses: - - -200 - Success, returns an array of HTTP Upstream Servers -400 - Upstream is static (UpstreamStatic), -invalid server ID (UpstreamBadServerId), -server “id” not removable (UpstreamServerImmutable), returns Error -404 - Server with ID “id” does not exist (UpstreamServerNotFound), -unknown version (UnknownVersion), -upstream not found (UpstreamNotFound), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/http/keyvals/ - - -Supported methods: - - -GET - Return key-value pairs from all HTTP keyval zones -Returns key-value pairs for each HTTP keyval shared memory zone. - -Request parameters: - -fields -(string, optional) - -If the “fields” value is empty, then only HTTP keyval zone names will be output. - - - -Possible responses: - - -200 - Success, returns a collection of "HTTP Keyval Shared Memory Zone" objects for all HTTP keyvals -404 - Unknown version (UnknownVersion), returns Error - - - - - -/http/keyvals/{httpKeyvalZoneName} - - -Parameters common for all methods: - -httpKeyvalZoneName -(string, required) - -The name of an HTTP keyval shared memory zone. - -Supported methods: - - -GET - Return key-value pairs from an HTTP keyval zone -Returns key-value pairs stored in a particular HTTP keyval shared memory zone. - -Request parameters: - -key -(string, optional) - -Get a particular key-value pair from the HTTP keyval zone. - - - -Possible responses: - - -200 - Success, returns HTTP Keyval Shared Memory Zone -404 - Keyval not found (KeyvalNotFound), -keyval key not found (KeyvalKeyNotFound), -unknown version (UnknownVersion), returns Error - - - -POST - Add a key-value pair to the HTTP keyval zone -Adds a new key-value pair to the HTTP keyval shared memory zone. Several key-value pairs can be entered if the HTTP keyval shared memory zone is empty. - -Request parameters: - -Key-value -(HTTP Keyval Shared Memory Zone, required) - -A key-value pair is specified in the JSON format. Several key-value pairs can be entered if the HTTP keyval shared memory zone is empty. Expiration time in milliseconds can be specified for a key-value pair with the expire parameter which overrides the timeout parameter of the keyval_zone directive. - - - -Possible responses: - - -201 - Created -400 - Invalid JSON (KeyvalFormatError), -invalid key format (KeyvalFormatError), -key required (KeyvalFormatError), -keyval timeout is not enabled (KeyvalFormatError), -only one key can be added (KeyvalFormatError), -reading request body failed BodyReadError), returns Error -404 - Keyval not found (KeyvalNotFound), -unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error -409 - Entry exists (EntryExists), -key already exists (KeyvalKeyExists), returns Error -413 - Request Entity Too Large, returns Error -415 - JSON error (JsonError), returns Error - - - -PATCH - Modify a key-value or delete a key -Changes the value of the selected key in the key-value pair, deletes a key by setting the key value to null, changes expiration time of a key-value pair. If synchronization of keyval zones in a cluster is enabled, deletes a key only on a target cluster node. Expiration time in milliseconds can be specified for a key-value pair with the expire parameter which overrides the timeout parameter of the keyval_zone directive. - -Request parameters: - -httpKeyvalZoneKeyValue -(HTTP Keyval Shared Memory Zone, required) - -A new value for the key is specified in the JSON format. - - - -Possible responses: - - -204 - Success -400 - Invalid JSON (KeyvalFormatError), -key required (KeyvalFormatError), -keyval timeout is not enabled (KeyvalFormatError), -only one key can be updated (KeyvalFormatError), -reading request body failed BodyReadError), returns Error -404 - Keyval not found (KeyvalNotFound), -keyval key not found (KeyvalKeyNotFound), -unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error -413 - Request Entity Too Large, returns Error -415 - JSON error (JsonError), returns Error - - - -DELETE - Empty the HTTP keyval zone -Deletes all key-value pairs from the HTTP keyval shared memory zone. If synchronization of keyval zones in a cluster is enabled, empties the keyval zone only on a target cluster node. - -Possible responses: - - -204 - Success -404 - Keyval not found (KeyvalNotFound), -unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/stream/ - - -Supported methods: - - -GET - Return list of stream-related endpoints -Returns a list of first level stream endpoints. - -Possible responses: - - -200 - Success, returns an array of strings -404 - Unknown version (UnknownVersion), returns Error - - - - - -/stream/server_zones/ - - -Supported methods: - - -GET - Return status of all stream server zones -Returns status information for each stream server zone. - -Request parameters: - -fields -(string, optional) - -Limits which fields of server zones will be output. If the “fields” value is empty, then only server zone names will be output. - - - -Possible responses: - - -200 - Success, returns a collection of "Stream Server Zone" objects for all stream server zones -404 - Unknown version (UnknownVersion), returns Error - - - - - -/stream/server_zones/{streamServerZoneName} - - -Parameters common for all methods: - -streamServerZoneName -(string, required) - -The name of a stream server zone. - -Supported methods: - - -GET - Return status of a stream server zone -Returns status of a particular stream server zone. - -Request parameters: - -fields -(string, optional) - -Limits which fields of the server zone will be output. - - - -Possible responses: - - -200 - Success, returns Stream Server Zone -404 - Server zone not found (ServerZoneNotFound), -unknown version (UnknownVersion), returns Error - - - -DELETE - Reset statistics for a stream server zone -Resets statistics of accepted and discarded connections, sessions, received and sent bytes, counters of SSL handshakes and session reuses in a particular stream server zone. - -Possible responses: - - -204 - Success -404 - Server zone not found (ServerZoneNotFound), -unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/stream/limit_conns/ - - -Supported methods: - - -GET - Return status of all stream limit_conn zones -Returns status information for each stream limit_conn zone. - -Request parameters: - -fields -(string, optional) - -Limits which fields of limit_conn zones will be output. If the “fields” value is empty, then only zone names will be output. - - - -Possible responses: - - -200 - Success, returns a collection of "Stream Connections Limiting" objects for all stream limit conns -404 - Unknown version (UnknownVersion), returns Error - - - - - -/stream/limit_conns/{streamLimitConnZoneName} - - -Parameters common for all methods: - -streamLimitConnZoneName -(string, required) - -The name of a limit_conn zone. - -Supported methods: - - -GET - Return status of an stream limit_conn zone -Returns status of a particular stream limit_conn zone. - -Request parameters: - -fields -(string, optional) - -Limits which fields of the limit_conn zone will be output. - - - -Possible responses: - - -200 - Success, returns Stream Connections Limiting -404 - limit_conn not found (LimitConnNotFound), -unknown version (UnknownVersion), returns Error - - - -DELETE - Reset statistics for a stream limit_conn zone -Resets the connection limiting statistics. - -Possible responses: - - -204 - Success -404 - limit_conn not found (LimitConnNotFound), -unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/stream/upstreams/ - - -Supported methods: - - -GET - Return status of all stream upstream server groups -Returns status of each stream upstream server group and its servers. - -Request parameters: - -fields -(string, optional) - -Limits which fields of upstream server groups will be output. If the “fields” value is empty, only names of upstreams will be output. - - - -Possible responses: - - -200 - Success, returns a collection of "Stream Upstream" objects for all stream upstreams -404 - Unknown version (UnknownVersion), returns Error - - - - - -/stream/upstreams/{streamUpstreamName}/ - - -Parameters common for all methods: - -streamUpstreamName -(string, required) - -The name of a stream upstream server group. - -Supported methods: - - -GET - Return status of a stream upstream server group -Returns status of a particular stream upstream server group and its servers. - -Request parameters: - -fields -(string, optional) - -Limits which fields of the upstream server group will be output. - - - -Possible responses: - - -200 - Success, returns Stream Upstream -400 - Upstream is static (UpstreamStatic), returns Error -404 - Unknown version (UnknownVersion), -upstream not found (UpstreamNotFound), returns Error - - - -DELETE - Reset statistics of a stream upstream server group -Resets the statistics for each upstream server in an upstream server group. - -Possible responses: - - -204 - Success -400 - Upstream is static (UpstreamStatic), returns Error -404 - Unknown version (UnknownVersion), -upstream not found (UpstreamNotFound), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/stream/upstreams/{streamUpstreamName}/servers/ - - -Parameters common for all methods: - -streamUpstreamName -(string, required) - -The name of an upstream server group. - -Supported methods: - - -GET - Return configuration of all servers in a stream upstream server group -Returns configuration of each server in a particular stream upstream server group. - -Possible responses: - - -200 - Success, returns an array of Stream Upstream Servers -400 - Upstream is static (UpstreamStatic), returns Error -404 - Unknown version (UnknownVersion), -upstream not found (UpstreamNotFound), returns Error - - - -POST - Add a server to a stream upstream server group -Adds a new server to a stream upstream server group. Server parameters are specified in the JSON format. - -Request parameters: - -postStreamUpstreamServer -(Stream Upstream Server, required) - -Address of a new server and other optional parameters in the JSON format. The “ID”, “backup”, and “service” parameters cannot be changed. - - - -Possible responses: - - -201 - Created, returns Stream Upstream 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), -reading request body failed BodyReadError), returns Error -404 - Unknown version (UnknownVersion), -upstream not found (UpstreamNotFound), returns Error -405 - Method disabled (MethodDisabled), returns Error -409 - Entry exists (EntryExists), returns Error -415 - JSON error (JsonError), returns Error - - - - - -/stream/upstreams/{streamUpstreamName}/servers/{streamUpstreamServerId} - - -Parameters common for all methods: - -streamUpstreamName -(string, required) - -The name of the upstream server group. -streamUpstreamServerId -(string, required) - -The ID of the server. - -Supported methods: - - -GET - Return configuration of a server in a stream upstream server group -Returns configuration of a particular server in the stream upstream server group. - -Possible responses: - - -200 - Success, returns Stream Upstream Server -400 - Upstream is static (UpstreamStatic), -invalid server ID (UpstreamBadServerId), returns Error -404 - Unknown version (UnknownVersion), -upstream not found (UpstreamNotFound), -server with ID “id” does not exist (UpstreamServerNotFound), returns Error - - - -PATCH - Modify a server in a stream upstream server group -Modifies settings of a particular server in a stream upstream server group. Server parameters are specified in the JSON format. - -Request parameters: - -patchStreamUpstreamServer -(Stream Upstream Server, required) - -Server parameters, specified in the JSON format. The “ID”, “backup”, and “service” parameters cannot be changed. - - - -Possible responses: - - -200 - Success, returns Stream Upstream 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), -reading request body failed BodyReadError), -“service” is empty (UpstreamBadService), -server “ID” address is immutable (UpstreamServerImmutable), -server “ID” weight is immutable (UpstreamServerWeightImmutable), -upstream “name” memory exhausted (UpstreamOutOfMemory), returns Error -404 - Server with ID “id” does not exist (UpstreamServerNotFound), -unknown version (UnknownVersion), -upstream not found (UpstreamNotFound), returns Error -405 - Method disabled (MethodDisabled), returns Error -415 - JSON error (JsonError), returns Error - - - -DELETE - Remove a server from a stream upstream server group -Removes a server from a stream server group. - -Possible responses: - - -200 - Success, returns an array of Stream Upstream Servers -400 - Upstream is static (UpstreamStatic), -invalid server ID (UpstreamBadServerId), -server “id” not removable (UpstreamServerImmutable), returns Error -404 - Server with ID “id” does not exist (UpstreamServerNotFound), -unknown version (UnknownVersion), -upstream not found (UpstreamNotFound), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/stream/keyvals/ - - -Supported methods: - - -GET - Return key-value pairs from all stream keyval zones -Returns key-value pairs for each stream keyval shared memory zone. - -Request parameters: - -fields -(string, optional) - -If the “fields” value is empty, then only stream keyval zone names will be output. - - - -Possible responses: - - -200 - Success, returns a collection of "Stream Keyval Shared Memory Zone" objects for all stream keyvals -404 - Unknown version (UnknownVersion), returns Error - - - - - -/stream/keyvals/{streamKeyvalZoneName} - - -Parameters common for all methods: - -streamKeyvalZoneName -(string, required) - -The name of a stream keyval shared memory zone. - -Supported methods: - - -GET - Return key-value pairs from a stream keyval zone -Returns key-value pairs stored in a particular stream keyval shared memory zone. - -Request parameters: - -key -(string, optional) - -Get a particular key-value pair from the stream keyval zone. - - - -Possible responses: - - -200 - Success, returns Stream Keyval Shared Memory Zone -404 - Keyval not found (KeyvalNotFound), -keyval key not found (KeyvalKeyNotFound), -unknown version (UnknownVersion), returns Error - - - -POST - Add a key-value pair to the stream keyval zone -Adds a new key-value pair to the stream keyval shared memory zone. Several key-value pairs can be entered if the stream keyval shared memory zone is empty. - -Request parameters: - -Key-value -(Stream Keyval Shared Memory Zone, required) - -A key-value pair is specified in the JSON format. Several key-value pairs can be entered if the stream keyval shared memory zone is empty. Expiration time in milliseconds can be specified for a key-value pair with the expire parameter which overrides the timeout parameter of the keyval_zone directive. - - - -Possible responses: - - -201 - Created -400 - Invalid JSON (KeyvalFormatError), -invalid key format (KeyvalFormatError), -key required (KeyvalFormatError), -keyval timeout is not enabled (KeyvalFormatError), -only one key can be added (KeyvalFormatError), -reading request body failed BodyReadError), returns Error -404 - Keyval not found (KeyvalNotFound), -unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error -409 - Entry exists (EntryExists), -key already exists (KeyvalKeyExists), returns Error -413 - Request Entity Too Large, returns Error -415 - JSON error (JsonError), returns Error - - - -PATCH - Modify a key-value or delete a key -Changes the value of the selected key in the key-value pair, deletes a key by setting the key value to null, changes expiration time of a key-value pair. If synchronization of keyval zones in a cluster is enabled, deletes a key only on a target cluster node. Expiration time is specified in milliseconds with the expire parameter which overrides the timeout parameter of the keyval_zone directive. - -Request parameters: - -streamKeyvalZoneKeyValue -(Stream Keyval Shared Memory Zone, required) - -A new value for the key is specified in the JSON format. - - - -Possible responses: - - -204 - Success -400 - Invalid JSON (KeyvalFormatError), -key required (KeyvalFormatError), -keyval timeout is not enabled (KeyvalFormatError), -only one key can be updated (KeyvalFormatError), -reading request body failed BodyReadError), returns Error -404 - Keyval not found (KeyvalNotFound), -keyval key not found (KeyvalKeyNotFound), -unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error -413 - Request Entity Too Large, returns Error -415 - JSON error (JsonError), returns Error - - - -DELETE - Empty the stream keyval zone -Deletes all key-value pairs from the stream keyval shared memory zone. If synchronization of keyval zones in a cluster is enabled, empties the keyval zone only on a target cluster node. - -Possible responses: - - -204 - Success -404 - Keyval not found (KeyvalNotFound), -unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/stream/zone_sync/ - - -Supported methods: - - -GET - Return sync status of a node -Returns synchronization status of a cluster node. - -Possible responses: - - -200 - Success, returns Stream Zone Sync Node -404 - Unknown version (UnknownVersion), returns Error - - - - - -/resolvers/ - - -Supported methods: - - -GET - Return status for all resolver zones -Returns status information for each resolver zone. - -Request parameters: - -fields -(string, optional) - -Limits which fields of resolvers statistics will be output. - - - -Possible responses: - - -200 - Success, returns a collection of "Resolver Zone" objects for all resolvers -404 - Unknown version (UnknownVersion), returns Error - - - - - -/resolvers/{resolverZoneName} - - -Parameters common for all methods: - -resolverZoneName -(string, required) - -The name of a resolver zone. - -Supported methods: - - -GET - Return statistics of a resolver zone -Returns statistics stored in a particular resolver zone. - -Request parameters: - -fields -(string, optional) - -Limits which fields of the resolver zone will be output (requests, responses, or both). - - - -Possible responses: - - -200 - Success, returns Resolver Zone -404 - Resolver zone not found (ResolverZoneNotFound), -unknown version (UnknownVersion), returns Error - - - -DELETE - Reset statistics for a resolver zone. -Resets statistics in a particular resolver zone. - -Possible responses: - - -204 - Success -404 - Resolver zone not found (ResolverZoneNotFound), -unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/ssl - - -Supported methods: - - -GET - Return SSL statistics -Returns SSL statistics. - -Request parameters: - -fields -(string, optional) - -Limits which fields of SSL statistics will be output. - - - -Possible responses: - - -200 - Success, returns SSL -404 - Unknown version (UnknownVersion), returns Error - - - -DELETE - Reset SSL statistics -Resets counters of SSL handshakes and session reuses. - -Possible responses: - - -204 - Success -404 - Unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/workers/ - - -Supported methods: - - -GET - Return statistics for all worker processes -Returns statistics for all worker processes such as accepted, dropped, active, idle connections, total and current requests. - -Request parameters: - -fields -(string, optional) - -Limits which fields of worker process statistics will be output. - - - -Possible responses: - - -200 - Success, returns a collection of "Worker process" objects for all workers -404 - Worker not found (WorkerNotFound), -unknown version (UnknownVersion), returns Error - - - -DELETE - Reset statistics for all worker processes. -Resets statistics for all worker processes such as -accepted, dropped, active, idle connections, total and current requests. - -Possible responses: - - -204 - Success -404 - Worker not found (WorkerNotFound), -unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - -/workers/{workerId} - - -Parameters common for all methods: - -workerId -(string, required) - -The ID of the worker process. - -Supported methods: - - -GET - Return status of a worker process -Returns status of a particular worker process. - -Request parameters: - -fields -(string, optional) - -Limits which fields of worker process statistics will be output. - - - -Possible responses: - - -200 - Success, returns Worker process -404 - Worker not found (WorkerNotFound), -unknown version (UnknownVersion), returns Error - - - -DELETE - Reset statistics for a worker process. -Resets statistics of accepted, dropped, active, idle connections, -as well as total and current requests. - -Possible responses: - - -204 - Success -404 - Worker not found (WorkerNotFound), -unknown version (UnknownVersion), returns Error -405 - Method disabled (MethodDisabled), returns Error - - - - - - -
-
- - - -nginx: -General information about nginx: - -version (string) - - -Version of nginx. - - -build (string) - - -Name of nginx build. - - -address (string) - - -The address of the server that accepted status request. - - -generation (integer) - - -The total number of configuration reloads. - - -load_timestamp (string) - - -Time of the last reload of configuration, in the ISO 8601 format with millisecond resolution. - - -timestamp (string) - - -Current time in the ISO 8601 format with millisecond resolution. - - -pid (integer) - - -The ID of the worker process that handled status request. - - -ppid (integer) - - -The ID of the master process that started the worker process. - - -Example: - -{ - "nginx" : { - "version" : "1.21.6", - "build" : "nginx-plus-r27", - "address" : "206.251.255.64", - "generation" : 6, - "load_timestamp" : "2022-06-28T11:15:44.467Z", - "timestamp" : "2022-06-28T09:26:07.305Z", - "pid" : 32212, - "ppid" : 32210 - } -} - - -Processes: - - -respawned (integer) - - -The total number of abnormally terminated and respawned child processes. - - -Example: - -{ - "respawned" : 0 -} - - -Connections: -The number of accepted, dropped, active, and idle connections. - -accepted (integer) - - -The total number of accepted client connections. - - -dropped (integer) - - -The total number of dropped client connections. - - -active (integer) - - -The current number of active client connections. - - -idle (integer) - - -The current number of idle client connections. - - -Example: - -{ - "accepted" : 4968119, - "dropped" : 0, - "active" : 5, - "idle" : 117 -} - - -SSL: - - -handshakes (integer) - - -The total number of successful SSL handshakes. - - -handshakes_failed (integer) - - -The total number of failed SSL handshakes. - - -session_reuses (integer) - - -The total number of session reuses during SSL handshake. - - -no_common_protocol (integer) - - -The number of SSL handshakes failed because of no common protocol. - - -no_common_cipher (integer) - - -The number of SSL handshakes failed because of no shared cipher. - - -handshake_timeout (integer) - - -The number of SSL handshakes failed because of a timeout. - - -peer_rejected_cert (integer) - - -The number of failed SSL handshakes when nginx presented the certificate to the client but it was rejected with a corresponding alert message. - - -verify_failures - -SSL certificate verification errors - -no_cert (integer) - - -A client did not provide the required certificate. - - -expired_cert (integer) - - -An expired or not yet valid certificate was presented by a client. - - -revoked_cert (integer) - - -A revoked certificate was presented by a client. - - -hostname_mismatch (integer) - - -Server's certificate doesn't match the hostname. - - -other (integer) - - -Other SSL certificate verification errors. - - - - -Example: - -{ - "handshakes" : 79572, - "handshakes_failed" : 21025, - "session_reuses" : 15762, - "no_common_protocol" : 4, - "no_common_cipher" : 2, - "handshake_timeout" : 0, - "peer_rejected_cert" : 0, - "verify_failures" : { - "no_cert" : 0, - "expired_cert" : 2, - "revoked_cert" : 1, - "hostname_mismatch" : 2, - "other" : 1 - } -} - - -Shared memory zone with slab allocator: -Shared memory zone with slab allocator - -pages - -The number of free and used memory pages. - -used (integer) - - -The current number of used memory pages. - - -free (integer) - - -The current number of free memory pages. - - - - -slots - -Status data for memory slots (8, 16, 32, 64, 128, etc.)A collection of "Memory Slot" objects - - -Example: - -{ - "pages" : { - "used" : 1143, - "free" : 2928 - }, - "slots" : { - "8" : { - "used" : 0, - "free" : 0, - "reqs" : 0, - "fails" : 0 - }, - "16" : { - "used" : 0, - "free" : 0, - "reqs" : 0, - "fails" : 0 - }, - "32" : { - "used" : 0, - "free" : 0, - "reqs" : 0, - "fails" : 0 - }, - "64" : { - "used" : 1, - "free" : 63, - "reqs" : 1, - "fails" : 0 - }, - "128" : { - "used" : 0, - "free" : 0, - "reqs" : 0, - "fails" : 0 - }, - "256" : { - "used" : 18078, - "free" : 178, - "reqs" : 1635736, - "fails" : 0 - } - } -} - - -Memory Slot: - - -used (integer) - - -The current number of used memory slots. - - -free (integer) - - -The current number of free memory slots. - - -reqs (integer) - - -The total number of attempts to allocate memory of specified size. - - -fails (integer) - - -The number of unsuccessful attempts to allocate memory of specified size. - - - - -HTTP Requests: - - -total (integer) - - -The total number of client requests. - - -current (integer) - - -The current number of client requests. - - -Example: - -{ - "total" : 10624511, - "current" : 4 -} - - -HTTP Server Zone: - - -processing (integer) - - -The number of client requests that are currently being processed. - - -requests (integer) - - -The total number of client requests received from clients. - - -responses - -The total number of responses sent to clients, the number of responses with status codes “1xx”, “2xx”, “3xx”, “4xx”, and “5xx”, and the number of responses per each status code. - -1xx (integer) - - -The number of responses with “1xx” status codes. - - -2xx (integer) - - -The number of responses with “2xx” status codes. - - -3xx (integer) - - -The number of responses with “3xx” status codes. - - -4xx (integer) - - -The number of responses with “4xx” status codes. - - -5xx (integer) - - -The number of responses with “5xx” status codes. - - -codes - -The number of responses per each status code. - -codeNumber (integer) - - -The number of responses with this particular status code. - - - - -total (integer) - - -The total number of responses sent to clients. - - - - -discarded (integer) - - -The total number of requests completed without sending a response. - - -received (integer) - - -The total number of bytes received from clients. - - -sent (integer) - - -The total number of bytes sent to clients. - - -ssl - - - -handshakes (integer) - - -The total number of successful SSL handshakes. - - -handshakes_failed (integer) - - -The total number of failed SSL handshakes. - - -session_reuses (integer) - - -The total number of session reuses during SSL handshake. - - -no_common_protocol (integer) - - -The number of SSL handshakes failed because of no common protocol. - - -no_common_cipher (integer) - - -The number of SSL handshakes failed because of no shared cipher. - - -handshake_timeout (integer) - - -The number of SSL handshakes failed because of a timeout. - - -peer_rejected_cert (integer) - - -The number of failed SSL handshakes when nginx presented the certificate to the client but it was rejected with a corresponding alert message. - - -verify_failures - -SSL certificate verification errors - -no_cert (integer) - - -A client did not provide the required certificate. - - -expired_cert (integer) - - -An expired or not yet valid certificate was presented by a client. - - -revoked_cert (integer) - - -A revoked certificate was presented by a client. - - -other (integer) - - -Other SSL certificate verification errors. - - - - - - -Example: - -{ - "processing" : 1, - "requests" : 706690, - "responses" : { - "1xx" : 0, - "2xx" : 699482, - "3xx" : 4522, - "4xx" : 907, - "5xx" : 266, - "codes" : { - "200" : 699482, - "301" : 4522, - "404" : 907, - "503" : 266 - }, - "total" : 705177 - }, - "discarded" : 1513, - "received" : 172711587, - "sent" : 19415530115, - "ssl" : { - "handshakes" : 104303, - "handshakes_failed" : 1421, - "session_reuses" : 54645, - "no_common_protocol" : 4, - "no_common_cipher" : 2, - "handshake_timeout" : 0, - "peer_rejected_cert" : 0, - "verify_failures" : { - "no_cert" : 0, - "expired_cert" : 2, - "revoked_cert" : 1, - "other" : 1 - } - } -} - - -HTTP Location Zone: - - -requests (integer) - - -The total number of client requests received from clients. - - -responses - -The total number of responses sent to clients, the number of responses with status codes “1xx”, “2xx”, “3xx”, “4xx”, and “5xx”, and the number of responses per each status code. - -1xx (integer) - - -The number of responses with “1xx” status codes. - - -2xx (integer) - - -The number of responses with “2xx” status codes. - - -3xx (integer) - - -The number of responses with “3xx” status codes. - - -4xx (integer) - - -The number of responses with “4xx” status codes. - - -5xx (integer) - - -The number of responses with “5xx” status codes. - - -codes - -The number of responses per each status code. - -codeNumber (integer) - - -The number of responses with this particular status code. - - - - -total (integer) - - -The total number of responses sent to clients. - - - - -discarded (integer) - - -The total number of requests completed without sending a response. - - -received (integer) - - -The total number of bytes received from clients. - - -sent (integer) - - -The total number of bytes sent to clients. - - -Example: - -{ - "requests" : 706690, - "responses" : { - "1xx" : 0, - "2xx" : 699482, - "3xx" : 4522, - "4xx" : 907, - "5xx" : 266, - "codes" : { - "200" : 112674, - "301" : 4522, - "404" : 2504, - "503" : 266 - }, - "total" : 705177 - }, - "discarded" : 1513, - "received" : 172711587, - "sent" : 19415530115 -} - - -HTTP Cache: - - -size (integer) - - -The current size of the cache. - - -max_size (integer) - - -The limit on the maximum size of the cache specified in the configuration. - - -cold (boolean) - - -A boolean value indicating whether the “cache loader” process is still loading data from disk into the cache. - - -hit - - - -responses (integer) - - -The total number of valid responses read from the cache. - - -bytes (integer) - - -The total number of bytes read from the cache. - - - - -stale - - - -responses (integer) - - -The total number of expired responses read from the cache (see proxy_cache_use_stale and other “*_cache_use_stale” directives). - - -bytes (integer) - - -The total number of bytes read from the cache. - - - - -updating - - - -responses (integer) - - -The total number of expired responses read from the cache while responses were being updated (see proxy_cache_use_stale and other “*_cache_use_stale” directives). - - -bytes (integer) - - -The total number of bytes read from the cache. - - - - -revalidated - - - -responses (integer) - - -The total number of expired and revalidated responses read from the cache (see proxy_cache_revalidate and other “*_cache_revalidate” directives. - - -bytes (integer) - - -The total number of bytes read from the cache. - - - - -miss - - - -responses (integer) - - -The total number of responses not found in the cache. - - -bytes (integer) - - -The total number of bytes read from the proxied server. - - -responses_written (integer) - - -The total number of responses written to the cache. - - -bytes_written (integer) - - -The total number of bytes written to the cache. - - - - -expired - - - -responses (integer) - - -The total number of expired responses not taken from the cache. - - -bytes (integer) - - -The total number of bytes read from the proxied server. - - -responses_written (integer) - - -The total number of responses written to the cache. - - -bytes_written (integer) - - -The total number of bytes written to the cache. - - - - -bypass - - - -responses (integer) - - -The total number of responses not looked up in the cache due to the proxy_cache_bypass and other “*_cache_bypass” directives. - - -bytes (integer) - - -The total number of bytes read from the proxied server. - - -responses_written (integer) - - -The total number of responses written to the cache. - - -bytes_written (integer) - - -The total number of bytes written to the cache. - - - - -Example: - -{ - "size" : 530915328, - "max_size" : 536870912, - "cold" : false, - "hit" : { - "responses" : 254032, - "bytes" : 6685627875 - }, - "stale" : { - "responses" : 0, - "bytes" : 0 - }, - "updating" : { - "responses" : 0, - "bytes" : 0 - }, - "revalidated" : { - "responses" : 0, - "bytes" : 0 - }, - "miss" : { - "responses" : 1619201, - "bytes" : 53841943822 - }, - "expired" : { - "responses" : 45859, - "bytes" : 1656847080, - "responses_written" : 44992, - "bytes_written" : 1641825173 - }, - "bypass" : { - "responses" : 200187, - "bytes" : 5510647548, - "responses_written" : 200173, - "bytes_written" : 44992 - } -} - - -HTTP Connections Limiting: - - -passed (integer) - - -The total number of connections that were neither limited nor accounted as limited. - - -rejected (integer) - - -The total number of connections that were rejected. - - -rejected_dry_run (integer) - - -The total number of connections accounted as rejected in the dry run mode. - - -Example: - -{ - "passed" : 15, - "rejected" : 0, - "rejected_dry_run" : 2 -} - - -HTTP Requests Rate Limiting: - - -passed (integer) - - -The total number of requests that were neither limited nor accounted as limited. - - -delayed (integer) - - -The total number of requests that were delayed. - - -rejected (integer) - - -The total number of requests that were rejected. - - -delayed_dry_run (integer) - - -The total number of requests accounted as delayed in the dry run mode. - - -rejected_dry_run (integer) - - -The total number of requests accounted as rejected in the dry run mode. - - -Example: - -{ - "passed" : 15, - "delayed" : 4, - "rejected" : 0, - "delayed_dry_run" : 1, - "rejected_dry_run" : 2 -} - - -HTTP Upstream: - - -peers - -An array of: - -id (integer) - - -The ID of the server. - - -server (string) - - -An address of the server. - - -service (string) - - -The service parameter value of the server directive. - - -name (string) - - -The name of the server specified in the server directive. - - -backup (boolean) - - -A boolean value indicating whether the server is a backup server. - - -weight (integer) - - -Weight of the server. - - -state (string) - - -Current state, which may be one of “up”, “draining”, “down”, “unavail”, “checking”, and “unhealthy”. - - -active (integer) - - -The current number of active connections. - - -ssl - - - -handshakes (integer) - - -The total number of successful SSL handshakes. - - -handshakes_failed (integer) - - -The total number of failed SSL handshakes. - - -session_reuses (integer) - - -The total number of session reuses during SSL handshake. - - -no_common_protocol (integer) - - -The number of SSL handshakes failed because of no common protocol. - - -handshake_timeout (integer) - - -The number of SSL handshakes failed because of a timeout. - - -peer_rejected_cert (integer) - - -The number of failed SSL handshakes when nginx presented the certificate to the upstream server but it was rejected with a corresponding alert message. - - -verify_failures - -SSL certificate verification errors - -expired_cert (integer) - - -An expired or not yet valid certificate was presented by an upstream server. - - -revoked_cert (integer) - - -A revoked certificate was presented by an upstream server. - - -hostname_mismatch (integer) - - -Server's certificate doesn't match the hostname. - - -other (integer) - - -Other SSL certificate verification errors. - - - - - - -max_conns (integer) - - -The max_conns limit for the server. - - -requests (integer) - - -The total number of client requests forwarded to this server. - - -responses - - - -1xx (integer) - - -The number of responses with “1xx” status codes. - - -2xx (integer) - - -The number of responses with “2xx” status codes. - - -3xx (integer) - - -The number of responses with “3xx” status codes. - - -4xx (integer) - - -The number of responses with “4xx” status codes. - - -5xx (integer) - - -The number of responses with “5xx” status codes. - - -codes - -The number of responses per each status code. - -codeNumber (integer) - - -The number of responses with this particular status code. - - - - -total (integer) - - -The total number of responses obtained from this server. - - - - -sent (integer) - - -The total number of bytes sent to this server. - - -received (integer) - - -The total number of bytes received from this server. - - -fails (integer) - - -The total number of unsuccessful attempts to communicate with the server. - - -unavail (integer) - - -How many times the server became unavailable for client requests (state “unavail”) due to the number of unsuccessful attempts reaching the max_fails threshold. - - -health_checks - - - -checks (integer) - - -The total number of health check requests made. - - -fails (integer) - - -The number of failed health checks. - - -unhealthy (integer) - - -How many times the server became unhealthy (state “unhealthy”). - - -last_passed (boolean) - - -Boolean indicating if the last health check request was successful and passed tests. - - - - -downtime (integer) - - -Total time the server was in the “unavail”, “checking”, and “unhealthy” states. - - -downstart (string) - - -The time when the server became “unavail”, “checking”, or “unhealthy”, in the ISO 8601 format with millisecond resolution. - - -selected (string) - - -The time when the server was last selected to process a request, in the ISO 8601 format with millisecond resolution. - - -header_time (integer) - - -The average time to get the response header from the server. - - -response_time (integer) - - -The average time to get the full response from the server. - - - - -keepalive (integer) - - -The current number of idle keepalive connections. - - -zombies (integer) - - -The current number of servers removed from the group but still processing active client requests. - - -zone (string) - - -The name of the shared memory zone that keeps the group’s configuration and run-time state. - - -queue - -For the requests queue, the following data are provided: - -size (integer) - - -The current number of requests in the queue. - - -max_size (integer) - - -The maximum number of requests that can be in the queue at the same time. - - -overflows (integer) - - -The total number of requests rejected due to the queue overflow. - - - - -Example: - -{ - "upstream_backend" : { - "peers" : [ - { - "id" : 0, - "server" : "10.0.0.1:8088", - "name" : "10.0.0.1:8088", - "backup" : false, - "weight" : 5, - "state" : "up", - "active" : 0, - "ssl" : { - "handshakes" : 620311, - "handshakes_failed" : 3432, - "session_reuses" : 36442, - "no_common_protocol" : 4, - "handshake_timeout" : 0, - "peer_rejected_cert" : 0, - "verify_failures" : { - "expired_cert" : 2, - "revoked_cert" : 1, - "hostname_mismatch" : 2, - "other" : 1 - } - }, - "max_conns" : 20, - "requests" : 667231, - "header_time" : 20, - "response_time" : 36, - "responses" : { - "1xx" : 0, - "2xx" : 666310, - "3xx" : 0, - "4xx" : 915, - "5xx" : 6, - "codes" : { - "200" : 666310, - "404" : 915, - "503" : 6 - }, - "total" : 667231 - }, - "sent" : 251946292, - "received" : 19222475454, - "fails" : 0, - "unavail" : 0, - "health_checks" : { - "checks" : 26214, - "fails" : 0, - "unhealthy" : 0, - "last_passed" : true - }, - "downtime" : 0, - "downstart" : "2022-06-28T11:09:21.602Z", - "selected" : "2022-06-28T15:01:25.000Z" - }, - { - "id" : 1, - "server" : "10.0.0.1:8089", - "name" : "10.0.0.1:8089", - "backup" : true, - "weight" : 1, - "state" : "unhealthy", - "active" : 0, - "max_conns" : 20, - "requests" : 0, - "responses" : { - "1xx" : 0, - "2xx" : 0, - "3xx" : 0, - "4xx" : 0, - "5xx" : 0, - "codes" : { - }, - "total" : 0 - }, - "sent" : 0, - "received" : 0, - "fails" : 0, - "unavail" : 0, - "health_checks" : { - "checks" : 26284, - "fails" : 26284, - "unhealthy" : 1, - "last_passed" : false - }, - "downtime" : 262925617, - "downstart" : "2022-06-28T11:09:21.602Z", - "selected" : "2022-06-28T15:01:25.000Z" - } - ], - "keepalive" : 0, - "zombies" : 0, - "zone" : "upstream_backend" - } -} - - -HTTP Upstream Server: -Dynamically configurable parameters of an HTTP upstream -server: - -id (integer) - - -The ID of the HTTP upstream server. The ID is assigned automatically and cannot be changed. - - -server (string) - - -Same as the address parameter of the HTTP upstream server. When adding a server, it is possible to specify it as a domain name. In this case, changes of the IP addresses that correspond to a domain name will be monitored and automatically applied to the upstream configuration without the need of restarting nginx. This requires the resolver directive in the “http” block. See also the resolve parameter of the HTTP upstream server. - - -service (string) - - -Same as the service parameter of the HTTP upstream server. This parameter cannot be changed. - - -weight (integer) - - -Same as the weight parameter of the HTTP upstream server. - - -max_conns (integer) - - -Same as the max_conns parameter of the HTTP upstream server. - - -max_fails (integer) - - -Same as the max_fails parameter of the HTTP upstream server. - - -fail_timeout (string) - - -Same as the fail_timeout parameter of the HTTP upstream server. - - -slow_start (string) - - -Same as the slow_start parameter of the HTTP upstream server. - - -route (string) - - -Same as the route parameter of the HTTP upstream server. - - -backup (boolean) - - -When true, adds a backup server. This parameter cannot be changed. - - -down (boolean) - - -Same as the down parameter of the HTTP upstream server. - - -drain (boolean) - - -Same as the drain parameter of the HTTP upstream server. - - -parent (string) - - -Parent server ID of the resolved server. The ID is assigned automatically and cannot be changed. - - -host (string) - - -Hostname of the resolved server. The hostname is assigned automatically and cannot be changed. - - -Example: - -{ - "id" : 1, - "server" : "10.0.0.1:8089", - "weight" : 4, - "max_conns" : 0, - "max_fails" : 0, - "fail_timeout" : "10s", - "slow_start" : "10s", - "route" : "", - "backup" : true, - "down" : true -} - - -HTTP Keyval Shared Memory Zone: -Contents of an HTTP keyval shared memory zone -when using the GET method.Example: - -{ - "key1" : "value1", - "key2" : "value2", - "key3" : "value3" -} - - -HTTP Keyval Shared Memory Zone: -Contents of an HTTP keyval shared memory zone -when using the POST or PATCH methods.Example: - -{ - "key1" : "value1", - "key2" : "value2", - "key3" : { - "value" : "value3", - "expire" : 30000 - } -} - - -Stream Server Zone: - - -processing (integer) - - -The number of client connections that are currently being processed. - - -connections (integer) - - -The total number of connections accepted from clients. - - -sessions - -The total number of completed sessions, and the number of sessions completed with status codes “2xx”, “4xx”, or “5xx”. - -2xx (integer) - - -The total number of sessions completed with status codes “2xx”. - - -4xx (integer) - - -The total number of sessions completed with status codes “4xx”. - - -5xx (integer) - - -The total number of sessions completed with status codes “5xx”. - - -total (integer) - - -The total number of completed client sessions. - - - - -discarded (integer) - - -The total number of connections completed without creating a session. - - -received (integer) - - -The total number of bytes received from clients. - - -sent (integer) - - -The total number of bytes sent to clients. - - -ssl - - - -handshakes (integer) - - -The total number of successful SSL handshakes. - - -handshakes_failed (integer) - - -The total number of failed SSL handshakes. - - -session_reuses (integer) - - -The total number of session reuses during SSL handshake. - - -no_common_protocol (integer) - - -The number of SSL handshakes failed because of no common protocol. - - -no_common_cipher (integer) - - -The number of SSL handshakes failed because of no shared cipher. - - -handshake_timeout (integer) - - -The number of SSL handshakes failed because of a timeout. - - -peer_rejected_cert (integer) - - -The number of failed SSL handshakes when nginx presented the certificate to the client but it was rejected with a corresponding alert message. - - -verify_failures - -SSL certificate verification errors - -no_cert (integer) - - -A client did not provide the required certificate. - - -expired_cert (integer) - - -An expired or not yet valid certificate was presented by a client. - - -revoked_cert (integer) - - -A revoked certificate was presented by a client. - - -other (integer) - - -Other SSL certificate verification errors. - - - - - - -Example: - -{ - "dns" : { - "processing" : 1, - "connections" : 155569, - "sessions" : { - "2xx" : 155564, - "4xx" : 0, - "5xx" : 0, - "total" : 155569 - }, - "discarded" : 0, - "received" : 4200363, - "sent" : 20489184, - "ssl" : { - "handshakes" : 76455, - "handshakes_failed" : 432, - "session_reuses" : 28770, - "no_common_protocol" : 4, - "no_common_cipher" : 2, - "handshake_timeout" : 0, - "peer_rejected_cert" : 0, - "verify_failures" : { - "no_cert" : 0, - "expired_cert" : 2, - "revoked_cert" : 1, - "other" : 1 - } - } - } -} - - -Stream Connections Limiting: - - -passed (integer) - - -The total number of connections that were neither limited nor accounted as limited. - - -rejected (integer) - - -The total number of connections that were rejected. - - -rejected_dry_run (integer) - - -The total number of connections accounted as rejected in the dry run mode. - - -Example: - -{ - "passed" : 15, - "rejected" : 0, - "rejected_dry_run" : 2 -} - - -Stream Upstream: - - -peers - -An array of: - -id (integer) - - -The ID of the server. - - -server (string) - - -An address of the server. - - -service (string) - - -The service parameter value of the server directive. - - -name (string) - - -The name of the server specified in the server directive. - - -backup (boolean) - - -A boolean value indicating whether the server is a backup server. - - -weight (integer) - - -Weight of the server. - - -state (string) - - -Current state, which may be one of “up”, “down”, “unavail”, “checking”, or “unhealthy”. - - -active (integer) - - -The current number of connections. - - -ssl - - - -handshakes (integer) - - -The total number of successful SSL handshakes. - - -handshakes_failed (integer) - - -The total number of failed SSL handshakes. - - -session_reuses (integer) - - -The total number of session reuses during SSL handshake. - - -no_common_protocol (integer) - - -The number of SSL handshakes failed because of no common protocol. - - -handshake_timeout (integer) - - -The number of SSL handshakes failed because of a timeout. - - -peer_rejected_cert (integer) - - -The number of failed SSL handshakes when nginx presented the certificate to the upstream server but it was rejected with a corresponding alert message. - - -verify_failures - -SSL certificate verification errors - -expired_cert (integer) - - -An expired or not yet valid certificate was presented by an upstream server. - - -revoked_cert (integer) - - -A revoked certificate was presented by an upstream server. - - -hostname_mismatch (integer) - - -Server's certificate doesn't match the hostname. - - -other (integer) - - -Other SSL certificate verification errors. - - - - - - -max_conns (integer) - - -The max_conns limit for the server. - - -connections (integer) - - -The total number of client connections forwarded to this server. - - -connect_time (integer) - - -The average time to connect to the upstream server. - - -first_byte_time (integer) - - -The average time to receive the first byte of data. - - -response_time (integer) - - -The average time to receive the last byte of data. - - -sent (integer) - - -The total number of bytes sent to this server. - - -received (integer) - - -The total number of bytes received from this server. - - -fails (integer) - - -The total number of unsuccessful attempts to communicate with the server. - - -unavail (integer) - - -How many times the server became unavailable for client connections (state “unavail”) due to the number of unsuccessful attempts reaching the max_fails threshold. - - -health_checks - - - -checks (integer) - - -The total number of health check requests made. - - -fails (integer) - - -The number of failed health checks. - - -unhealthy (integer) - - -How many times the server became unhealthy (state “unhealthy”). - - -last_passed (boolean) - - -Boolean indicating whether the last health check request was successful and passed tests. - - - - -downtime (integer) - - -Total time the server was in the “unavail”, “checking”, and “unhealthy” states. - - -downstart (string) - - -The time when the server became “unavail”, “checking”, or “unhealthy”, in the ISO 8601 format with millisecond resolution. - - -selected (string) - - -The time when the server was last selected to process a connection, in the ISO 8601 format with millisecond resolution. - - - - -zombies (integer) - - -The current number of servers removed from the group but still processing active client connections. - - -zone (string) - - -The name of the shared memory zone that keeps the group’s configuration and run-time state. - - -Example: - -{ - "dns" : { - "peers" : [ - { - "id" : 0, - "server" : "10.0.0.1:12347", - "name" : "10.0.0.1:12347", - "backup" : false, - "weight" : 5, - "state" : "up", - "active" : 0, - "ssl" : { - "handshakes" : 200, - "handshakes_failed" : 4, - "session_reuses" : 189, - "no_common_protocol" : 4, - "handshake_timeout" : 0, - "peer_rejected_cert" : 0, - "verify_failures" : { - "expired_cert" : 2, - "revoked_cert" : 1, - "hostname_mismatch" : 2, - "other" : 1 - } - }, - "max_conns" : 50, - "connections" : 667231, - "sent" : 251946292, - "received" : 19222475454, - "fails" : 0, - "unavail" : 0, - "health_checks" : { - "checks" : 26214, - "fails" : 0, - "unhealthy" : 0, - "last_passed" : true - }, - "downtime" : 0, - "downstart" : "2022-06-28T11:09:21.602Z", - "selected" : "2022-06-28T15:01:25.000Z" - }, - { - "id" : 1, - "server" : "10.0.0.1:12348", - "name" : "10.0.0.1:12348", - "backup" : true, - "weight" : 1, - "state" : "unhealthy", - "active" : 0, - "max_conns" : 50, - "connections" : 0, - "sent" : 0, - "received" : 0, - "fails" : 0, - "unavail" : 0, - "health_checks" : { - "checks" : 26284, - "fails" : 26284, - "unhealthy" : 1, - "last_passed" : false - }, - "downtime" : 262925617, - "downstart" : "2022-06-28T11:09:21.602Z", - "selected" : "2022-06-28T15:01:25.000Z" - } - ], - "zombies" : 0, - "zone" : "dns" - } -} - - -Stream Upstream Server: -Dynamically configurable parameters of a stream upstream -server: - -id (integer) - - -The ID of the stream upstream server. The ID is assigned automatically and cannot be changed. - - -server (string) - - -Same as the address parameter of the stream upstream server. When adding a server, it is possible to specify it as a domain name. In this case, changes of the IP addresses that correspond to a domain name will be monitored and automatically applied to the upstream configuration without the need of restarting nginx. This requires the resolver directive in the “stream” block. See also the resolve parameter of the stream upstream server. - - -service (string) - - -Same as the service parameter of the stream upstream server. This parameter cannot be changed. - - -weight (integer) - - -Same as the weight parameter of the stream upstream server. - - -max_conns (integer) - - -Same as the max_conns parameter of the stream upstream server. - - -max_fails (integer) - - -Same as the max_fails parameter of the stream upstream server. - - -fail_timeout (string) - - -Same as the fail_timeout parameter of the stream upstream server. - - -slow_start (string) - - -Same as the slow_start parameter of the stream upstream server. - - -backup (boolean) - - -When true, adds a backup server. This parameter cannot be changed. - - -down (boolean) - - -Same as the down parameter of the stream upstream server. - - -parent (string) - - -Parent server ID of the resolved server. The ID is assigned automatically and cannot be changed. - - -host (string) - - -Hostname of the resolved server. The hostname is assigned automatically and cannot be changed. - - -Example: - -{ - "id" : 0, - "server" : "10.0.0.1:12348", - "weight" : 1, - "max_conns" : 0, - "max_fails" : 1, - "fail_timeout" : "10s", - "slow_start" : 0, - "backup" : false, - "down" : false -} - - -Stream Keyval Shared Memory Zone: -Contents of a stream keyval shared memory zone when using the GET method.Example: - -{ - "key1" : "value1", - "key2" : "value2", - "key3" : "value3" -} - - -Stream Keyval Shared Memory Zone: -Contents of a stream keyval shared memory zone -when using the POST or PATCH methods.Example: - -{ - "key1" : "value1", - "key2" : "value2", - "key3" : { - "value" : "value3", - "expire" : 30000 - } -} - - -Stream Zone Sync Node: - - -zones - -Synchronization information per each shared memory zone.A collection of "Sync Zone" objects - - -status - -Synchronization information per node in a cluster. - -bytes_in (integer) - - -The number of bytes received by this node. - - -msgs_in (integer) - - -The number of messages received by this node. - - -msgs_out (integer) - - -The number of messages sent by this node. - - -bytes_out (integer) - - -The number of bytes sent by this node. - - -nodes_online (integer) - - -The number of peers this node is connected to. - - - - -Example: - -{ - "zones" : { - "zone1" : { - "records_pending" : 2061, - "records_total" : 260575 - }, - "zone2" : { - "records_pending" : 0, - "records_total" : 14749 - } - }, - "status" : { - "bytes_in" : 1364923761, - "msgs_in" : 337236, - "msgs_out" : 346717, - "bytes_out" : 1402765472, - "nodes_online" : 15 - } -} - - -Sync Zone: -Synchronization status of a shared memory zone. - -records_pending (integer) - - -The number of records that need to be sent to the cluster. - - -records_total (integer) - - -The total number of records stored in the shared memory zone. - - - - -Resolver Zone: -Statistics of DNS requests and responses per particular -resolver zone. - -requests - - - -name (integer) - - -The total number of requests to resolve names to addresses. - - -srv (integer) - - -The total number of requests to resolve SRV records. - - -addr (integer) - - -The total number of requests to resolve addresses to names. - - - - -responses - - - -noerror (integer) - - -The total number of successful responses. - - -formerr (integer) - - -The total number of FORMERR (Format error) responses. - - -servfail (integer) - - -The total number of SERVFAIL (Server failure) responses. - - -nxdomain (integer) - - -The total number of NXDOMAIN (Host not found) responses. - - -notimp (integer) - - -The total number of NOTIMP (Unimplemented) responses. - - -refused (integer) - - -The total number of REFUSED (Operation refused) responses. - - -timedout (integer) - - -The total number of timed out requests. - - -unknown (integer) - - -The total number of requests completed with an unknown error. - - - - -Example: - -{ - "resolver_zone1" : { - "requests" : { - "name" : 25460, - "srv" : 130, - "addr" : 2580 - }, - "responses" : { - "noerror" : 26499, - "formerr" : 0, - "servfail" : 3, - "nxdomain" : 0, - "notimp" : 0, - "refused" : 0, - "timedout" : 243, - "unknown" : 478 - } - } -} - - -Worker process: -Statistics per each worker process. - -id (integer) - - -The ID of the worker process. - - -pid (integer) - - -The PID identifier of the worker process used by the operating system. - - -connections - -The number of accepted, dropped, active, and idle connections -per worker process. - -accepted (integer) - - -The total number of client connections -accepted by the worker process. - - -dropped (integer) - - -The total number of client connections -dropped by the worker process. - - -active (integer) - - -The current number of active client connections -that are currently being handled by the worker process. - - -idle (integer) - - -The number of idle client connections -that are currently being handled by the worker process. - - - - -http - - - -requests - -The total number of client requests handled by the worker process. - -total (integer) - - -The total number of client requests received by the worker process. - - -current (integer) - - -The current number of client requests that are currently being processed by the worker process. - - - - - - -Example: - -{ - "id" : 0, - "pid" : 32212, - "connections" : { - "accepted" : 1, - "dropped" : 0, - "active" : 1, - "idle" : 0 - }, - "http" : { - "requests" : { - "total" : 15, - "current" : 1 - } - } -} - - -Error: -nginx error object. - -error - - - -status (integer) - - -HTTP error code. - - -text (string) - - -Error description. - - -code (string) - - -Internal nginx error code. - - - - -request_id (string) - - -The ID of the request, equals the value of the $request_id variable. - - -href (string) - - -Link to reference documentation. - - - - - -
- -
diff --git a/xml/en/docs/http/ngx_http_api_module_head.xml b/xml/en/docs/http/ngx_http_api_module_head.xml deleted file mode 100644 --- a/xml/en/docs/http/ngx_http_api_module_head.xml +++ /dev/null @@ -1,302 +0,0 @@ - - - - - - - - -
- - -The ngx_http_api_module module (1.13.3) provides REST API -for accessing various status information, -configuring upstream server groups on-the-fly, and managing -key-value pairs -without the need of reconfiguring nginx. - - - - -The module supersedes the -ngx_http_status_module and -ngx_http_upstream_conf_module -modules. - - - - -When using the PATCH or POST methods, -make sure that the payload does not exceed the -buffer size -for reading the client request body, otherwise, the - -error may be returned. - - - - -This module is available as part of our -commercial subscription. - - - -
- - -
- - - -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; - } -} - -All API requests include -a supported API version in the URI. -Examples of API requests with this configuration: - -http://127.0.0.1/api/9/ -http://127.0.0.1/api/9/nginx -http://127.0.0.1/api/9/connections -http://127.0.0.1/api/9/workers -http://127.0.0.1/api/9/http/requests -http://127.0.0.1/api/9/http/server_zones/server_backend -http://127.0.0.1/api/9/http/caches/cache_backend -http://127.0.0.1/api/9/http/upstreams/backend -http://127.0.0.1/api/9/http/upstreams/backend/servers/ -http://127.0.0.1/api/9/http/upstreams/backend/servers/1 -http://127.0.0.1/api/9/http/keyvals/one?key=arg1 -http://127.0.0.1/api/9/stream/ -http://127.0.0.1/api/9/stream/server_zones/server_backend -http://127.0.0.1/api/9/stream/upstreams/ -http://127.0.0.1/api/9/stream/upstreams/backend -http://127.0.0.1/api/9/stream/upstreams/backend/servers/1 - - - -
- - -
- - - -[write=on|off] - -location - - -Turns on the REST API interface in the surrounding location. -Access to this location should be -limited. - - - -The write parameter determines whether the API -is read-only or read-write. -By default, the API is read-only. - - - -All API requests should contain a supported API version in the URI. -If the request URI equals the location prefix, -the list of supported API versions is returned. -The current API version is “9”. - - - -The optional “fields” argument in the request line -specifies which fields of the requested objects will be output: - -http://127.0.0.1/api/9/nginx?fields=version,build - - - - - - - -zone - -server -location -if in location -1.13.12 - - -Enables collection of virtual -http -or -stream -server status information in the specified zone. -Several servers may share the same zone. - - - -Starting from 1.17.0, status information can be collected -per . -The special value off disables statistics collection -in nested location blocks. -Note that the statistics is collected -in the context of a location where processing ends. -It may be different from the original location, if an -internal -redirect happens during request processing. - - - - -
- -
- - - - - -The /workers/ data -were added in version 9. - - - -Detailed failure counters were added to SSL statistics -in version 8 (1.23.2). - - - -The ssl data -for each HTTP -upstream, -server zone, -and stream -upstream, -server zone, -were added in version 8 (1.21.6). - - - -The codes data -in responses for each HTTP -upstream, -server zone, and -location zone -were added in version 7. - - - -The /stream/limit_conns/ data -were added in version 6. - - - -The /http/limit_conns/ data -were added in version 6. - - - -The /http/limit_reqs/ data -were added in version 6. - - - -The “expire” parameter of a -key-value pair can be -set or -changed -since version 5. - - - -The /resolvers/ data -were added in version 5. - - - -The /http/location_zones/ data -were added in version 5. - - - -The path and method fields of -nginx error object -were removed in version 4. -These fields continue to exist in earlier api versions, -but show an empty value. - - - -The /stream/zone_sync/ data -were added in version 3. - - - -The drain parameter -was added in version 2. - - - -The /stream/keyvals/ data -were added in version 2. - - - - - -
- -
diff --git a/xml/en/docs/http/ngx_http_auth_basic_module.xml b/xml/en/docs/http/ngx_http_auth_basic_module.xml --- a/xml/en/docs/http/ngx_http_auth_basic_module.xml +++ b/xml/en/docs/http/ngx_http_auth_basic_module.xml @@ -10,7 +10,7 @@ + rev="11">
@@ -22,9 +22,8 @@ using the “HTTP Basic Authentication” protocol. Access can also be limited by -address, by the -result of subrequest, -or by JWT. +address or by the +result of subrequest. Simultaneous limitation of access by address and by password is controlled by the directive. diff --git a/xml/en/docs/http/ngx_http_auth_jwt_module.xml b/xml/en/docs/http/ngx_http_auth_jwt_module.xml deleted file mode 100644 --- a/xml/en/docs/http/ngx_http_auth_jwt_module.xml +++ /dev/null @@ -1,461 +0,0 @@ - - - - - - - - -
- - -The ngx_http_auth_jwt_module module (1.11.3) -implements client authorization by validating the provided -JSON Web Token (JWT) -using the specified keys. -The module supports -JSON Web Signature (JWS), -JSON Web Encryption (JWE) -(1.19.7), and Nested JWT (1.21.0). -The module can be used for -OpenID Connect -authentication. - - - -The module may be combined with -other access modules, such as -ngx_http_access_module, -ngx_http_auth_basic_module, -and -ngx_http_auth_request_module, -via the directive. - - - - -This module is available as part of our -commercial subscription. - - - -
- - -
- - -The module supports the following JSON Web -Algorithms. - - - -JWS algorithms: - - - -HS256, HS384, HS512 - - - -RS256, RS384, RS512 - - - -ES256, ES384, ES512 - - - -EdDSA (Ed25519 and Ed448 signatures) (1.15.7) - - - - - -Prior to version 1.13.7, -only HS256, RS256, ES256 algorithms were supported. - - - - -JWE content encryption algorithms (1.19.7): - - - -A128CBC-HS256, A192CBC-HS384, A256CBC-HS512 - - - -A128GCM, A192GCM, A256GCM - - - - - - -JWE key management algorithms (1.19.9): - - - -A128KW, A192KW, A256KW - - - -A128GCMKW, A192GCMKW, A256GCMKW - - - -dir—direct use of a shared symmetric key as the content encryption key - - - -RSA-OAEP, RSA-OAEP-256, RSA-OAEP-384, RSA-OAEP-512 (1.21.0) - - - - - -
- - -
- - - -location / { - auth_jwt "closed site"; - auth_jwt_key_file conf/keys.json; -} - - - -
- - -
- - - - string - [token=$variable] | - off -off -http -server -location -limit_except - - -Enables validation of JSON Web Token. -The specified string is used as a realm. -Parameter value can contain variables. - - - -The optional token parameter specifies a variable -that contains JSON Web Token. -By default, JWT is passed in the
Authorization
header -as a -Bearer Token. -JWT may be also passed as a cookie or a part of a query string: - -auth_jwt "closed site" token=$cookie_auth_token; - -
- - -The special value off cancels the effect -of the auth_jwt directive -inherited from the previous configuration level. - - -
- - - -$variable name ... - -http -1.11.10 - - -Sets the variable to a JWT claim parameter -identified by key names. -Name matching starts from the top level of the JSON tree. -For arrays, the variable keeps a list of array elements separated by commas. - -auth_jwt_claim_set $email info e-mail; -auth_jwt_claim_set $job info "job title"; - - -Prior to version 1.13.7, only one key name could be specified, -and the result was undefined for arrays. - - - - - -Variable values for tokens encrypted with JWE -are available only after decryption which occurs during the -Access phase. - - - - - - - -$variable name ... - -http -1.11.10 - - -Sets the variable to a JOSE header parameter -identified by key names. -Name matching starts from the top level of the JSON tree. -For arrays, the variable keeps a list of array elements separated by commas. - -Prior to version 1.13.7, only one key name could be specified, -and the result was undefined for arrays. - - - - - - - -time -0 -http -server -location -1.21.4 - - -Enables or disables caching of keys -obtained from a file -or from a subrequest, -and sets caching time for them. -Caching of keys obtained from variables is not supported. -By default, caching of keys is disabled. - - - - - - -file - -http -server -location -limit_except - - -Specifies a file in -JSON Web Key Set -format for validating JWT signature. -Parameter value can contain variables. - - - -Several auth_jwt_key_file directives -can be specified on the same level (1.21.1): - -auth_jwt_key_file conf/keys.json; -auth_jwt_key_file conf/key.jwk; - -If at least one of the specified keys cannot be loaded or processed, -nginx will return the - error. - - - - - - -uri - -http -server -location -limit_except -1.15.6 - - -Allows retrieving a -JSON Web Key Set -file from a subrequest for validating JWT signature and -sets the URI where the subrequest will be sent to. -Parameter value can contain variables. -To avoid validation overhead, -it is recommended to cache the key file: - -proxy_cache_path /data/nginx/cache levels=1 keys_zone=foo:10m; - -server { - ... - - location / { - auth_jwt "closed site"; - auth_jwt_key_request /jwks_uri; - } - - location = /jwks_uri { - internal; - proxy_cache foo; - proxy_pass http://idp.example.com/keys; - } -} - -Several auth_jwt_key_request directives -can be specified on the same level (1.21.1): - -auth_jwt_key_request /jwks_uri; -auth_jwt_key_request /jwks2_uri; - -If at least one of the specified keys cannot be loaded or processed, -nginx will return the - error. - - - - - - -time -0s -http -server -location -1.13.10 - - -Sets the maximum allowable leeway to compensate -clock skew when verifying the -exp -and -nbf -JWT claims. - - - - - - -signed | - encrypted | - nested -signed -http -server -location -limit_except -1.19.7 - - -Specifies which type of JSON Web Token to expect: -JWS (signed), -JWE (encrypted), -or signed and then encrypted -Nested JWT (nested) (1.21.0). - - - - - - - - $value ... - [error=401 | - 403] - - -http -server -location -limit_except -1.21.2 - - -Specifies additional checks for JWT validation. -The value can contain text, variables, and their combination, -and must start with a variable (1.21.7). -The authentication will succeed only -if all the values are not empty and are not equal to “0”. - -map $jwt_claim_iss $valid_jwt_iss { - "good" 1; -} -... - -auth_jwt_require $valid_jwt_iss; - - - - -If any of the checks fails, -the 401 error code is returned. -The optional error parameter (1.21.7) -allows redefining the error code to 403. - - - - -
- - -
- - -The ngx_http_auth_jwt_module module -supports embedded variables: - - - - -$jwt_header_name - -returns the value of a specified -JOSE header - - -$jwt_claim_name - -returns the value of a specified -JWT claim - - -For nested claims and claims including a dot (“.”), -the value of the variable cannot be evaluated; -the directive should be used instead. - - - -Variable values for tokens encrypted with JWE -are available only after decryption which occurs during the -Access phase. - - - -$jwt_payload - -returns the decrypted top-level payload -of nested -or encrypted tokens (1.21.2). -For nested tokens returns the enclosed JWS token. -For encrypted tokens returns JSON with claims. - - - - - -
- -
diff --git a/xml/en/docs/http/ngx_http_auth_request_module.xml b/xml/en/docs/http/ngx_http_auth_request_module.xml --- a/xml/en/docs/http/ngx_http_auth_request_module.xml +++ b/xml/en/docs/http/ngx_http_auth_request_module.xml @@ -10,7 +10,7 @@ + rev="6">
@@ -37,10 +37,8 @@ configuration parameter. The module may be combined with other access modules, such as -ngx_http_access_module, +ngx_http_access_module and ngx_http_auth_basic_module, -and -ngx_http_auth_jwt_module, via the directive. Before version 1.7.3, responses to authorization subrequests could not be cached diff --git a/xml/en/docs/http/ngx_http_core_module.xml b/xml/en/docs/http/ngx_http_core_module.xml --- a/xml/en/docs/http/ngx_http_core_module.xml +++ b/xml/en/docs/http/ngx_http_core_module.xml @@ -10,7 +10,7 @@ + rev="107">
@@ -260,9 +260,8 @@ location /images/ { Delays processing of unauthorized requests with 401 response code to prevent timing attacks when access is limited by -password, by the -result of subrequest, -or by JWT. +password or by the +result of subrequest. @@ -855,7 +854,6 @@ Internal requests are the following: requests redirected by the , , -, , and directives; @@ -1070,11 +1068,8 @@ or Allowing the GET method makes the HEAD method also allowed. Access to other methods can be limited using the -ngx_http_access_module, -ngx_http_auth_basic_module, -and -ngx_http_auth_jwt_module -(1.13.10) +ngx_http_access_module and +ngx_http_auth_basic_module modules directives: limit_except GET { @@ -2186,8 +2181,7 @@ closed normally. address ... [valid=time] [ipv4=on|off] - [ipv6=on|off] - [status_zone=zone] + [ipv6=on|off] http server @@ -2237,16 +2231,6 @@ configuring DNS servers in a properly se - -The optional status_zone parameter (1.17.1) -enables -collection -of DNS server statistics of requests and responses -in the specified zone. -The parameter is available as part of our -commercial subscription. - - @@ -2314,9 +2298,8 @@ Allows access if all (allany) of the ngx_http_access_module, ngx_http_auth_basic_module, -ngx_http_auth_request_module, or -ngx_http_auth_jwt_module +ngx_http_auth_request_module modules allow access. @@ -2667,8 +2650,7 @@ The details of setting up hash tables ar on | off | - build | - string + build on http server @@ -2685,16 +2667,6 @@ a - - - - - - - -
- - -The ngx_http_f4f_module module provides -server-side support for Adobe HTTP Dynamic Streaming (HDS). - - - -This module implements handling of HTTP Dynamic Streaming requests in the -“/videoSeg1-Frag1” form — extracting the needed fragment -from the videoSeg1.f4f file using the videoSeg1.f4x -index file. -This module is an alternative to the Adobe’s f4f module (HTTP Origin Module) -for Apache. - - - -Usual pre-processing with Adobe’s f4fpackager is required, see relevant -documentation for details. - - - - -This module is available as part of our -commercial subscription. - - - -
- - -
- - - -location /video/ { - f4f; - ... -} - - - -
- - -
- - - - -location - - -Turns on module processing in the surrounding location. - - - - - - -size -512k -http -server -location - - -Sets the size of the buffer used for -reading the .f4x index file. - - - - -
- -
diff --git a/xml/en/docs/http/ngx_http_fastcgi_module.xml b/xml/en/docs/http/ngx_http_fastcgi_module.xml --- a/xml/en/docs/http/ngx_http_fastcgi_module.xml +++ b/xml/en/docs/http/ngx_http_fastcgi_module.xml @@ -10,7 +10,7 @@ + rev="54">
@@ -392,11 +392,7 @@ will be cached. [manager_threshold=time] [loader_files=number] [loader_sleep=time] - [loader_threshold=time] - [purger=on|off] - [purger_files=number] - [purger_sleep=time] - [purger_threshold=time] + [loader_threshold=time] http @@ -442,15 +438,6 @@ In addition, all active keys and informa in a shared memory zone, whose name and size are configured by the keys_zone parameter. One megabyte zone can store about 8 thousand keys. - -As part of -commercial subscription, -the shared memory zone also stores extended -cache information, -thus, it is required to specify a larger zone size for the same number of keys. -For example, -one megabyte zone can store about 4 thousand keys. - @@ -494,56 +481,6 @@ parameter (by default, 50 milliseconds) -Additionally, -the following parameters are available as part of our -commercial subscription: - - - - - - -purger=on|off - - -Instructs whether cache entries that match a -wildcard key -will be removed from the disk by the cache purger (1.7.12). -Setting the parameter to on -(default is off) -will activate the “cache purger” process that -permanently iterates through all cache entries -and deletes the entries that match the wildcard key. - - - -purger_files=number - - -Sets the number of items that will be scanned during one iteration (1.7.12). -By default, purger_files is set to 10. - - - -purger_threshold=number - - -Sets the duration of one iteration (1.7.12). -By default, purger_threshold is set to 50 milliseconds. - - - -purger_sleep=number - - -Sets a pause between iterations (1.7.12). -By default, purger_sleep is set to 50 milliseconds. - - - - - - In versions 1.7.3, 1.7.7, and 1.11.10 cache header format has been changed. Previously cached responses will be considered invalid @@ -554,63 +491,6 @@ after upgrading to a newer nginx version - -string ... - -http -server -location -1.5.7 - - -Defines conditions under which the request will be considered a cache -purge request. -If at least one value of the string parameters is not empty and is not equal -to “0” then the cache entry with a corresponding -cache key is removed. -The result of successful operation is indicated by returning -the response. - - - -If the cache key of a purge request ends -with an asterisk (“*”), all cache entries matching the -wildcard key will be removed from the cache. -However, these entries will remain on the disk until they are deleted -for either inactivity, -or processed by the cache purger (1.7.12), -or a client attempts to access them. - - - -Example configuration: - -fastcgi_cache_path /data/nginx/cache keys_zone=cache_zone:10m; - -map $request_method $purge_method { - PURGE 1; - default 0; -} - -server { - ... - location / { - fastcgi_pass backend; - fastcgi_cache cache_zone; - fastcgi_cache_key $uri; - fastcgi_cache_purge $purge_method; - } -} - - -This functionality is available as part of our -commercial subscription. - - - - - - on | off off diff --git a/xml/en/docs/http/ngx_http_hls_module.xml b/xml/en/docs/http/ngx_http_hls_module.xml deleted file mode 100644 --- a/xml/en/docs/http/ngx_http_hls_module.xml +++ /dev/null @@ -1,278 +0,0 @@ - - - - - - - - -
- - -The ngx_http_hls_module module provides HTTP Live Streaming -(HLS) server-side support for MP4 and MOV media files. -Such files typically have the .mp4, .m4v, -.m4a, .mov, or .qt filename extensions. -The module supports H.264 video codec, AAC and MP3 audio codecs. - - - -For each media file, two URIs are supported: - - - -A playlist URI with the “.m3u8” filename extension. -The URI can accept optional arguments: - - - -“start” and “end” -define playlist boundaries in seconds (1.9.0). - - - -“offset” shifts an initial playback position -to the time offset in seconds (1.9.0). -A positive value sets a time offset from the beginning of the playlist. -A negative value sets a time offset -from the end of the last fragment in the playlist. - - - -“len” defines the fragment length in seconds. - - - - - - -A fragment URI with the “.ts” filename extension. -The URI can accept optional arguments: - - - -“start” and “end” -define fragment boundaries in seconds. - - - - - - - - - - -This module is available as part of our -commercial subscription. - - - -
- - -
- - - -location / { - hls; - hls_fragment 5s; - hls_buffers 10 10m; - hls_mp4_buffer_size 1m; - hls_mp4_max_buffer_size 5m; - root /var/video/; -} - -With this configuration, the following URIs are supported for -the “/var/video/test.mp4” file: - -http://hls.example.com/test.mp4.m3u8?offset=1.000&start=1.000&end=2.200 -http://hls.example.com/test.mp4.m3u8?len=8.000 -http://hls.example.com/test.mp4.ts?start=1.000&end=2.200 - - - -
- - -
- - - - -location - - -Turns on HLS streaming in the surrounding location. - - - - - - -number size -8 2m -http -server -location - - -Sets the maximum number and size of buffers -that are used for reading and writing data frames. - - - - - - -on | off -off -http -server -location -1.5.12 - - -Adds arguments from a playlist request to URIs of fragments. -This may be useful for performing client authorization at the moment of -requesting a fragment, or when protecting an HLS stream with the -ngx_http_secure_link_module -module. - - - -For example, if a client requests a playlist -http://example.com/hls/test.mp4.m3u8?a=1&b=2, -the arguments a=1 and b=2 -will be added to URIs of fragments after the arguments -start and end: - -#EXTM3U -#EXT-X-VERSION:3 -#EXT-X-TARGETDURATION:15 -#EXT-X-PLAYLIST-TYPE:VOD - -#EXTINF:9.333, -test.mp4.ts?start=0.000&end=9.333&a=1&b=2 -#EXTINF:7.167, -test.mp4.ts?start=9.333&end=16.500&a=1&b=2 -#EXTINF:5.416, -test.mp4.ts?start=16.500&end=21.916&a=1&b=2 -#EXTINF:5.500, -test.mp4.ts?start=21.916&end=27.416&a=1&b=2 -#EXTINF:15.167, -test.mp4.ts?start=27.416&end=42.583&a=1&b=2 -#EXTINF:9.626, -test.mp4.ts?start=42.583&end=52.209&a=1&b=2 - -#EXT-X-ENDLIST - - - - -If an HLS stream is protected with the -ngx_http_secure_link_module -module, $uri should not be used in the - -expression because this will cause errors when requesting the fragments. -Base URI should be used -instead of $uri -($hls_uri in the example): - -http { - ... - - map $uri $hls_uri { - ~^(?<base_uri>.*).m3u8$ $base_uri; - ~^(?<base_uri>.*).ts$ $base_uri; - default $uri; - } - - server { - ... - - location /hls/ { - hls; - hls_forward_args on; - - alias /var/videos/; - - secure_link $arg_md5,$arg_expires; - secure_link_md5 "$secure_link_expires$hls_uri$remote_addr secret"; - - if ($secure_link = "") { - return 403; - } - - if ($secure_link = "0") { - return 410; - } - } - } -} - - - - - - - -time -5s -http -server -location - - -Defines the default fragment length for playlist URIs requested without the -“len” argument. - - - - - - -size -512k -http -server -location - - -Sets the initial size of the buffer used for -processing MP4 and MOV files. - - - - - - -size -10m -http -server -location - - -During metadata processing, a larger buffer may become necessary. -Its size cannot exceed the specified size, -or else nginx will return the server error -, -and log the following message: - -"/some/movie/file.mp4" mp4 moov atom is too large: -12583268, you may want to increase hls_mp4_max_buffer_size - - - - - -
- -
diff --git a/xml/en/docs/http/ngx_http_internal_redirect_module.xml b/xml/en/docs/http/ngx_http_internal_redirect_module.xml deleted file mode 100644 --- a/xml/en/docs/http/ngx_http_internal_redirect_module.xml +++ /dev/null @@ -1,97 +0,0 @@ - - - - - - - - -
- - -The ngx_http_internal_redirect_module module (1.23.4) allows -making an internal redirect. -In contrast to -rewriting URIs, -the redirection is made after checking -request and -connection processing limits, -and access limits. - - - - -This module is available as part of our -commercial subscription. - - - -
- - -
- - - -limit_req_zone $jwt_claim_sub zone=jwt_sub:10m rate=1r/s; - -server { - location / { - auth_jwt "realm"; - auth_jwt_key_file key.jwk; - - internal_redirect @rate_limited; - } - - location @rate_limited { - internal; - - limit_req zone=jwt_sub burst=10; - proxy_pass http://backend; - } -} - -The example implements -per-user -rate limiting. -Implementation without internal_redirect -is vulnerable to DoS attacks by unsigned JWTs, as normally the -limit_req -check is performed -before -auth_jwt check. -Using internal_redirect -allows reordering these checks. - - -
- - -
- - -uri - -server -location - - -Sets the URI for internal redirection of the request. -It is also possible to use a -named location -instead of the URI. -The uri value can contain variables. -If the uri value is empty, -then the redirect will not be made. - - - - -
- -
diff --git a/xml/en/docs/http/ngx_http_keyval_module.xml b/xml/en/docs/http/ngx_http_keyval_module.xml deleted file mode 100644 --- a/xml/en/docs/http/ngx_http_keyval_module.xml +++ /dev/null @@ -1,178 +0,0 @@ - - - - - - - - -
- - -The ngx_http_keyval_module module (1.13.3) creates variables -with values taken from key-value pairs managed by the -API -or a variable (1.15.10) that can also be set with -njs. - - - - -This module is available as part of our -commercial subscription. - - - -
- - -
- - - -http { - - keyval_zone zone=one:32k state=/var/lib/nginx/state/one.keyval; - keyval $arg_text $text zone=one; - ... - server { - ... - location / { - return 200 $text; - } - - location /api { - api write=on; - } - } -} - - - -
- - -
- - - - key - $variable - zone=name - -http - - -Creates a new $variable whose value -is looked up by the key in the key-value database. -Matching rules are defined by the -type parameter of the -keyval_zone directive. -The database is stored in a shared memory zone -specified by the zone parameter. - - - - - - - - zone=name:size - [state=file] - [timeout=time] - [type=string|ip|prefix] - [sync] - -http - - -Sets the name and size of the shared memory zone -that keeps the key-value database. -Key-value pairs are managed by the -API. - - - -The optional state parameter specifies a file -that keeps the current state of the key-value database in the JSON format -and makes it persistent across nginx restarts. -Changing the file content directly should be avoided. - - - -Examples: - -keyval_zone zone=one:32k state=/var/lib/nginx/state/one.keyval; # path for Linux -keyval_zone zone=one:32k state=/var/db/nginx/state/one.keyval; # path for FreeBSD - - - - -The optional timeout parameter (1.15.0) sets -the time after which key-value pairs are removed from the zone. - - - -The optional type parameter (1.17.1) activates -an extra index optimized for matching the key of a certain type -and defines matching rules when evaluating -a keyval $variable. - -The index is stored in the same shared memory zone -and thus requires additional storage. - - - - -type=string - -default, no index is enabled; -variable lookup is performed using exact match -of the record key and a search key - - -type=ip - -the search key is the textual representation of IPv4 or IPv6 address -or CIDR range; -to match a record key, the search key must belong to a subnet -specified by a record key or exactly match an IP address - - -type=prefix - -variable lookup is performed using prefix match -of a record key and a search key (1.17.5); -to match a record key, the record key must be a prefix of the search key - - - - - - -The optional sync parameter (1.15.0) enables -synchronization -of the shared memory zone. -The synchronization requires the -timeout parameter to be set. - -If the synchronization is enabled, removal of key-value pairs (no matter -one -or -all) -will be performed only on a target cluster node. -The same key-value pairs on other cluster nodes -will be removed upon timeout. - - - - - -
- -
diff --git a/xml/en/docs/http/ngx_http_limit_conn_module.xml b/xml/en/docs/http/ngx_http_limit_conn_module.xml --- a/xml/en/docs/http/ngx_http_limit_conn_module.xml +++ b/xml/en/docs/http/ngx_http_limit_conn_module.xml @@ -10,7 +10,7 @@ + rev="15">
@@ -201,19 +201,6 @@ If the zone storage is exhausted, the se to all further requests. - - -Additionally, as part of our -commercial subscription, -the -status information -for each such shared memory zone can be -obtained or -reset -with the API since 1.17.7. - - - diff --git a/xml/en/docs/http/ngx_http_limit_req_module.xml b/xml/en/docs/http/ngx_http_limit_req_module.xml --- a/xml/en/docs/http/ngx_http_limit_req_module.xml +++ b/xml/en/docs/http/ngx_http_limit_req_module.xml @@ -10,7 +10,7 @@ + rev="17">
@@ -187,8 +187,7 @@ Sets the status code to return in respon key zone=name:size - rate=rate - [sync] + rate=rate http @@ -238,29 +237,6 @@ it is specified in request per minute (r For example, half-request per second is 30r/m. - -The sync parameter (1.15.3) enables -synchronization -of the shared memory zone. - -The sync parameter is available as part of our -commercial subscription. - - - - - -Additionally, as part of our -commercial subscription, -the -status information -for each such shared memory zone can be -obtained or -reset -with the API since 1.17.7. - - -
diff --git a/xml/en/docs/http/ngx_http_mp4_module.xml b/xml/en/docs/http/ngx_http_mp4_module.xml --- a/xml/en/docs/http/ngx_http_mp4_module.xml +++ b/xml/en/docs/http/ngx_http_mp4_module.xml @@ -188,62 +188,6 @@ 12583268, you may want to increase mp4_m - - - on | - off | - factor -off -http -server -location - - -Limits the rate of response transmission to a client. -The rate is limited based on the average bitrate of the -MP4 file served. -To calculate the rate, the bitrate is multiplied by the specified -factor. -The special value “on” corresponds to the factor of 1.1. -The special value “off” disables rate limiting. -The limit is set per a request, and so if a client simultaneously opens -two connections, the overall rate will be twice as much -as the specified limit. - - - - -This directive is available as part of our -commercial subscription. - - - - - - - -time -60s -http -server -location - - -Sets the initial amount of media data (measured in playback time) -after which the further transmission of the response to a client -will be rate limited. - - - - -This directive is available as part of our -commercial subscription. - - - - - - on | off off diff --git a/xml/en/docs/http/ngx_http_proxy_module.xml b/xml/en/docs/http/ngx_http_proxy_module.xml --- a/xml/en/docs/http/ngx_http_proxy_module.xml +++ b/xml/en/docs/http/ngx_http_proxy_module.xml @@ -10,7 +10,7 @@ + rev="77">
@@ -408,11 +408,7 @@ will be cached. [manager_threshold=time] [loader_files=number] [loader_sleep=time] - [loader_threshold=time] - [purger=on|off] - [purger_files=number] - [purger_sleep=time] - [purger_threshold=time] + [loader_threshold=time] http @@ -458,15 +454,6 @@ In addition, all active keys and informa in a shared memory zone, whose name and size are configured by the keys_zone parameter. One megabyte zone can store about 8 thousand keys. - -As part of -commercial subscription, -the shared memory zone also stores extended -cache information, -thus, it is required to specify a larger zone size for the same number of keys. -For example, -one megabyte zone can store about 4 thousand keys. - @@ -510,56 +497,6 @@ parameter (by default, 50 milliseconds) -Additionally, -the following parameters are available as part of our -commercial subscription: - - - - - - -purger=on|off - - -Instructs whether cache entries that match a -wildcard key -will be removed from the disk by the cache purger (1.7.12). -Setting the parameter to on -(default is off) -will activate the “cache purger” process that -permanently iterates through all cache entries -and deletes the entries that match the wildcard key. - - - -purger_files=number - - -Sets the number of items that will be scanned during one iteration (1.7.12). -By default, purger_files is set to 10. - - - -purger_threshold=number - - -Sets the duration of one iteration (1.7.12). -By default, purger_threshold is set to 50 milliseconds. - - - -purger_sleep=number - - -Sets a pause between iterations (1.7.12). -By default, purger_sleep is set to 50 milliseconds. - - - - - - In versions 1.7.3, 1.7.7, and 1.11.10 cache header format has been changed. Previously cached responses will be considered invalid @@ -570,63 +507,6 @@ after upgrading to a newer nginx version - -string ... - -http -server -location -1.5.7 - - -Defines conditions under which the request will be considered a cache -purge request. -If at least one value of the string parameters is not empty and is not equal -to “0” then the cache entry with a corresponding -cache key is removed. -The result of successful operation is indicated by returning -the response. - - - -If the cache key of a purge request ends -with an asterisk (“*”), all cache entries matching the -wildcard key will be removed from the cache. -However, these entries will remain on the disk until they are deleted -for either inactivity, -or processed by the cache purger (1.7.12), -or a client attempts to access them. - - - -Example configuration: - -proxy_cache_path /data/nginx/cache keys_zone=cache_zone:10m; - -map $request_method $purge_method { - PURGE 1; - default 0; -} - -server { - ... - location / { - proxy_pass http://backend; - proxy_cache cache_zone; - proxy_cache_key $uri; - proxy_cache_purge $purge_method; - } -} - - -This functionality is available as part of our -commercial subscription. - - - - - - on | off off diff --git a/xml/en/docs/http/ngx_http_proxy_protocol_vendor_module.xml b/xml/en/docs/http/ngx_http_proxy_protocol_vendor_module.xml deleted file mode 100644 --- a/xml/en/docs/http/ngx_http_proxy_protocol_vendor_module.xml +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - - - -
- - -The ngx_http_proxy_protocol_vendor_module module (1.23.3) -allows obtaining additional information about a connection in -cloud platforms from application-specific TLVs of the -PROXY -protocol -header. - - - -Supported cloud platforms: - - - -Amazon Web Services - - - -Google Cloud Platform - - - -Microsoft Azure - - - - - - -The PROXY protocol must be previously enabled by setting the -proxy_protocol parameter -in the directive. - - - - -This module is available as part of our -commercial subscription. - - - -
- - -
- - - -proxy_set_header X-Conn-ID $proxy_protocol_tlv_gcp_conn_id; - -server { - listen 80 proxy_protocol; - listen 443 ssl proxy_protocol; - ... -} - - - -
- - -
- - - - -$proxy_protocol_tlv_aws_vpce_id - -TLV value from the PROXY Protocol header representing the -ID -of AWS VPC endpoint - - -$proxy_protocol_tlv_azure_pel_id - -TLV value from the PROXY Protocol header representing the -LinkID -of Azure private endpoint - - -$proxy_protocol_tlv_gcp_conn_id - -TLV value from the PROXY Protocol header representing -Google Cloud PSC -connection ID - - - - - -
- -
diff --git a/xml/en/docs/http/ngx_http_scgi_module.xml b/xml/en/docs/http/ngx_http_scgi_module.xml --- a/xml/en/docs/http/ngx_http_scgi_module.xml +++ b/xml/en/docs/http/ngx_http_scgi_module.xml @@ -10,7 +10,7 @@ + rev="42">
@@ -383,11 +383,7 @@ will be cached. [manager_threshold=time] [loader_files=number] [loader_sleep=time] - [loader_threshold=time] - [purger=on|off] - [purger_files=number] - [purger_sleep=time] - [purger_threshold=time] + [loader_threshold=time] http @@ -433,15 +429,6 @@ In addition, all active keys and informa in a shared memory zone, whose name and size are configured by the keys_zone parameter. One megabyte zone can store about 8 thousand keys. - -As part of -commercial subscription, -the shared memory zone also stores extended -cache information, -thus, it is required to specify a larger zone size for the same number of keys. -For example, -one megabyte zone can store about 4 thousand keys. - @@ -485,56 +472,6 @@ parameter (by default, 50 milliseconds) -Additionally, -the following parameters are available as part of our -commercial subscription: - - - - - - -purger=on|off - - -Instructs whether cache entries that match a -wildcard key -will be removed from the disk by the cache purger (1.7.12). -Setting the parameter to on -(default is off) -will activate the “cache purger” process that -permanently iterates through all cache entries -and deletes the entries that match the wildcard key. - - - -purger_files=number - - -Sets the number of items that will be scanned during one iteration (1.7.12). -By default, purger_files is set to 10. - - - -purger_threshold=number - - -Sets the duration of one iteration (1.7.12). -By default, purger_threshold is set to 50 milliseconds. - - - -purger_sleep=number - - -Sets a pause between iterations (1.7.12). -By default, purger_sleep is set to 50 milliseconds. - - - - - - In versions 1.7.3, 1.7.7, and 1.11.10 cache header format has been changed. Previously cached responses will be considered invalid @@ -545,63 +482,6 @@ after upgrading to a newer nginx version - -string ... - -http -server -location -1.5.7 - - -Defines conditions under which the request will be considered a cache -purge request. -If at least one value of the string parameters is not empty and is not equal -to “0” then the cache entry with a corresponding -cache key is removed. -The result of successful operation is indicated by returning -the response. - - - -If the cache key of a purge request ends -with an asterisk (“*”), all cache entries matching the -wildcard key will be removed from the cache. -However, these entries will remain on the disk until they are deleted -for either inactivity, -or processed by the cache purger (1.7.12), -or a client attempts to access them. - - - -Example configuration: - -scgi_cache_path /data/nginx/cache keys_zone=cache_zone:10m; - -map $request_method $purge_method { - PURGE 1; - default 0; -} - -server { - ... - location / { - scgi_pass backend; - scgi_cache cache_zone; - scgi_cache_key $uri; - scgi_cache_purge $purge_method; - } -} - - -This functionality is available as part of our -commercial subscription. - - - - - - on | off off diff --git a/xml/en/docs/http/ngx_http_session_log_module.xml b/xml/en/docs/http/ngx_http_session_log_module.xml deleted file mode 100644 --- a/xml/en/docs/http/ngx_http_session_log_module.xml +++ /dev/null @@ -1,161 +0,0 @@ - - - - - - - - -
- - -The ngx_http_session_log_module module enables logging -sessions (that is, aggregates of multiple HTTP requests) instead of -individual HTTP requests. - - - - -This module is available as part of our -commercial subscription. - - - -
- - -
- - -The following configuration sets up a session log and maps requests to -sessions according to the request client address and
User-Agent
-request header field: - - session_log_zone /path/to/log format=combined - zone=one:1m timeout=30s - md5=$binary_remote_addr$http_user_agent; - - location /media/ { - session_log one; - } - -
- -
- - -
- - -name | off -off -http -server -location - - -Enables the use of the specified session log. -The special value off cancels the effect -of the session_log directives -inherited from the previous configuration level. - - - - - - - - name - string ... -combined "..." -http - - -Specifies the output format of a log. -The value of the $body_bytes_sent variable is aggregated across -all requests in a session. -The values of all other variables available for logging correspond to the -first request in a session. - - - - - - - - path - zone=name:size - [format=format] - [timeout=time] - [id=id] - [md5=md5] - - -http - - -Sets the path to a log file and configures the shared memory zone that is used -to store currently active sessions. - - - -A session is considered active for as long as the time elapsed since -the last request in the session does not exceed the specified -timeout (by default, 30 seconds). -Once a session is no longer active, it is written to the log. - - - -The id parameter identifies the -session to which a request is mapped. -The id parameter is set to the hexadecimal representation -of an MD5 hash (for example, obtained from a cookie using variables). -If this parameter is not specified or does not represent the valid -MD5 hash, nginx computes the MD5 hash from the value of -the md5 parameter and creates a new session using this hash. -Both the id and md5 parameters -can contain variables. - - - -The format parameter sets the custom session log -format configured by the directive. -If format is not specified, the predefined -“combined” format is used. - - - - -
- - -
- - -The ngx_http_session_log_module module supports -two embedded variables: - - - -$session_log_id - -current session ID; - - -$session_log_binary_id - - -current session ID in binary form (16 bytes). - - - - - -
- -
diff --git a/xml/en/docs/http/ngx_http_status_module.xml b/xml/en/docs/http/ngx_http_status_module.xml deleted file mode 100644 --- a/xml/en/docs/http/ngx_http_status_module.xml +++ /dev/null @@ -1,1192 +0,0 @@ - - - - - - - - -
- - -The ngx_http_status_module module provides -access to various status information. - -This module was available as part of our -commercial subscription -until 1.13.10. -It was superseded by the -ngx_http_api_module module -in 1.13.3. - - - -
- - -
- - - -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; - } - - server { - listen 127.0.0.1; - - location /upstream_conf { - upstream_conf; - } - - location /status { - status; - } - - location = /status.html { - } - } -} - -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; - } -} - - - - -Examples of status requests with this configuration: - -http://127.0.0.1/status -http://127.0.0.1/status/nginx_version -http://127.0.0.1/status/caches/cache_backend -http://127.0.0.1/status/upstreams -http://127.0.0.1/status/upstreams/backend -http://127.0.0.1/status/upstreams/backend/peers/1 -http://127.0.0.1/status/upstreams/backend/peers/1/weight -http://127.0.0.1/status/stream -http://127.0.0.1/status/stream/upstreams -http://127.0.0.1/status/stream/upstreams/backend -http://127.0.0.1/status/stream/upstreams/backend/peers/1 -http://127.0.0.1/status/stream/upstreams/backend/peers/1/weight - - - - -The simple monitoring page is shipped with this distribution, -accessible as “/status.html” in the default configuration. -It requires the locations “/status” and -“/status.html” to be configured as shown above. - - -
- - -
- - - - -location - - -The status information will be accessible from the surrounding location. -Access to this location should be -limited. - - - - - - -json -jsonp [callback] -json -http -server -location - - -By default, status information is output in the JSON format. - - - -Alternatively, data may be output as JSONP. -The callback parameter specifies the name of a callback function. -Parameter value can contain variables. -If parameter is omitted, or the computed value is an empty string, -then “ngx_status_jsonp_callback” is used. - - - - - - -zone - -server - - -Enables collection of virtual -http -or -stream -(1.7.11) server status information in the specified zone. -Several servers may share the same zone. - - - - -
- - -
- - -The following status information is provided: - - -version - -Version of the provided data set. -The current version is 8. - - -nginx_version - -Version of nginx. - - -nginx_build - -Name of nginx build. - - -address - -The address of the server that accepted status request. - - -generation - -The total number of configuration -reloads. - - -load_timestamp - -Time of the last reload of configuration, in milliseconds since Epoch. - - -timestamp - -Current time in milliseconds since Epoch. - - -pid - -The ID of the worker process that handled status request. - - -ppid - -The ID of the master process that started -the worker process. - - -processes - - - -respawned - -The total number of abnormally terminated and respawned -child processes. - - - - - -connections - - - -accepted - -The total number of accepted client connections. - - -dropped - -The total number of dropped client connections. - - -active - -The current number of active client connections. - - -idle - -The current number of idle client connections. - - - - - -ssl - - - -handshakes - -The total number of successful SSL handshakes. - - -handshakes_failed - -The total number of failed SSL handshakes. - - -session_reuses - -The total number of session reuses during SSL handshake. - - - - - -requests - - - -total - -The total number of client requests. - - -current - -The current number of client requests. - - - - - -server_zones - -For each : - - -processing - -The number of -client requests that are currently being processed. - - -requests - -The total number of -client requests received from clients. - - -responses - - - -total - -The total number of -responses sent to clients. - - - -1xx, -2xx, -3xx, -4xx, -5xx - - -The number of responses with status codes 1xx, 2xx, 3xx, 4xx, and 5xx. - - - - - -discarded - -The total number of requests completed without sending a response. - - -received - -The total number of bytes received from clients. - - -sent - -The total number of bytes sent to clients. - - - - - -slabs - -For each shared memory zone that uses slab allocator: - - -pages - - - -used - -The current number of used memory pages. - - -free - -The current number of free memory pages. - - - - - -slots - -For each memory slot size (8, 16, 32, 64, 128, etc.) -the following data are provided: - - -used - -The current number of used memory slots. - - -free - -The current number of free memory slots. - - -reqs - -The total number of attempts to allocate memory of specified size. - - -fails - -The number of unsuccessful attempts to allocate memory of specified size. - - - - - - - - -upstreams - -For each -dynamically -configurable -group, -the following data are provided: - - -peers - -For each -, -the following data are provided: - - -id - -The ID of the server. - - -server - -An -address -of the server. - - -name - -The name of the server specified in the - -directive. - - -service - -The -parameter value of the - directive. - - -backup - -A boolean value indicating whether the server is a - -server. - - -weight - -Weight -of the server. - - -state - -Current state, which may be one of -“up”, -“draining”, -“down”, -“unavail”, -“checking”, -or -“unhealthy”. - - -active - -The current number of active connections. - - -max_conns - -The limit -for the server. - - -requests - -The total number of -client requests forwarded to this server. - - -responses - - - -total - -The total number of -responses obtained from this server. - - - -1xx, -2xx, -3xx, -4xx, -5xx - - -The number of responses with status codes 1xx, 2xx, 3xx, 4xx, and 5xx. - - - - - -sent - -The total number of bytes sent to this server. - - -received - -The total number of bytes received from this server. - - -fails - -The total number of -unsuccessful attempts to communicate with the server. - - -unavail - -How many times -the server became unavailable for client requests -(state “unavail”) -due to the number of unsuccessful attempts reaching the - -threshold. - - -health_checks - - - -checks - -The total number of -health check -requests made. - - -fails - -The number of failed health checks. - - -unhealthy - -How many times -the server became unhealthy (state “unhealthy”). - - -last_passed - -Boolean indicating -if the last health check request was successful and passed -tests. - - - - - -downtime - -Total time -the server was in the “unavail”, -“checking”, and “unhealthy” states. - - -downstart - -The time (in milliseconds since Epoch) -when the server became -“unavail”, -“checking”, or “unhealthy”. - - -selected - -The time (in milliseconds since Epoch) -when the server was last selected to process a request (1.7.5). - - -header_time - -The average time to get the -response -header from the server (1.7.10). -Prior to version 1.11.6, -the field was available only when using the - -load balancing method. - - -response_time - -The average time to get the -full -response from the server (1.7.10). -Prior to version 1.11.6, -the field was available only when using the - -load balancing method. - - - - - -keepalive - -The current number of -idle connections. - - -zombies - -The current number of servers removed -from the group but still processing active client requests. - - -zone - -The name of the shared memory - -that keeps the group’s configuration and run-time state. - - -queue - -For the requests , -the following data are provided: - - -size - -The current number of requests in the queue. - - -max_size - -The maximum number of requests that can be in the queue at the same time. - - -overflows - -The total number of requests rejected due to the queue overflow. - - - - - - - - -caches - -For each cache (configured by - and the likes): - - -size - -The current size of the cache. - - -max_size - -The limit on the maximum size of the cache specified in the configuration. - - -cold - -A boolean value indicating whether the “cache loader” process is still loading -data from disk into the cache. - - - - hit, - stale, - updating, - revalidated - - - - -responses - -The total number of responses read from the cache (hits, or stale responses -due to -and the likes). - - -bytes - -The total number of bytes read from the cache. - - - - - - - miss, - expired, - bypass - - - - -responses - -The total number of responses not taken from the cache (misses, expires, or -bypasses due to - -and the likes). - - -bytes - -The total number of bytes read from the proxied server. - - -responses_written - -The total number of responses written to the cache. - - -bytes_written - -The total number of bytes written to the cache. - - - - - - - - -stream - - - -server_zones - -For each : - - -processing - -The number of -client connections that are currently being processed. - - -connections - -The total number of -connections accepted from clients. - - -sessions - - - -total - -The total number of completed client sessions. - - - -2xx, -4xx, -5xx - - -The number of sessions completed with -status codes -2xx, 4xx, or 5xx. - - - - - -discarded - -The total number of connections completed without creating a session. - - -received - -The total number of bytes received from clients. - - -sent - -The total number of bytes sent to clients. - - - - - -upstreams - -For each -dynamically -configurable -group, -the following data are provided: - - -peers - -For each - -the following data are provided: - - -id - -The ID of the server. - - -server - -An -address -of the server. - - - -name - -The name of the server specified in the - directive. - - -service - -The -parameter value of the - directive. - - -backup - -A boolean value indicating whether the server is a - -server. - - -weight - -Weight -of the server. - - -state - -Current state, which may be one of -“up”, -“down”, -“unavail”, -“checking”, -or -“unhealthy”. - - -active - -The current number of connections. - - -max_conns - -The limit -for the server. - - -connections - -The total number of -client connections forwarded to this server. - - -connect_time - -The average time to connect to the upstream server. -Prior to version 1.11.6, -the field was available only when using the - -load balancing method. - - -first_byte_time - -The average time to receive the first byte of data. -Prior to version 1.11.6, -the field was available only when using the - -load balancing method. - - -response_time - -The average time to receive the last byte of data. -Prior to version 1.11.6, -the field was available only when using the - -load balancing method. - - -sent - -The total number of bytes sent to this server. - - -received - -The total number of bytes received from this server. - - -fails - -The total number of -unsuccessful attempts to communicate with the server. - - -unavail - -How many times -the server became unavailable for client connections -(state “unavail”) -due to the number of unsuccessful attempts reaching the - -threshold. - - -health_checks - - - -checks - -The total number of -health check -requests made. - - -fails - -The number of failed health checks. - - -unhealthy - -How many times -the server became unhealthy (state “unhealthy”). - - -last_passed - -Boolean indicating -if the last health check request was successful and passed -tests. - - - - - -downtime - -Total time -the server was in the “unavail”, -“checking”, and “unhealthy” states. - - -downstart - -The time (in milliseconds since Epoch) -when the server became -“unavail”, -“checking”, or “unhealthy”. - - -selected - -The time (in milliseconds since Epoch) -when the server was last selected to process a connection. - - - - - -zombies - -The current number of servers removed -from the group but still processing active client connections. - - -zone - -The name of the shared memory - -that keeps the group’s configuration and run-time state. - - - - - - - - - - - -
- -
- - - - - -The - field in -http and stream -upstreams -was added in 8. - - - -The status data -were added in 8. - - - -The -checking state -was added in 8. - - - -The - and fields in -http and stream -upstreams -were added in 8. - - - -The - and fields -were added in 8. - - - -The - status data -and the discarded field in -stream server_zones -were added in 7. - - - -The field -was moved from nginx debug version -in 6. - - - -The status data -were added in 6. - - - -The - field in - -was added in 6. - - - -The status data -were added in 6. - - - -The - field -was added in 6. - - - -The list of servers in -was moved into in - 6. - - - -The keepalive field of an upstream server -was removed in 5. - - - -The stream status data -were added in 5. - - - -The - field -was added in 5. - - - -The - field in - -was added in 5. - - - -The - and fields in - -were added in 5. - - - -The - field in - -was added in 4. - - - -The draining state in - -was added in 4. - - - -The - and fields in - -were added in 3. - - - -The revalidated field in - -was added in 3. - - - -The , , -and status data -were added in 2. - - - - - -
- -
diff --git a/xml/en/docs/http/ngx_http_upstream_conf_module.xml b/xml/en/docs/http/ngx_http_upstream_conf_module.xml deleted file mode 100644 --- a/xml/en/docs/http/ngx_http_upstream_conf_module.xml +++ /dev/null @@ -1,369 +0,0 @@ - - - - - - - - -
- - -The ngx_http_upstream_conf_module module -allows configuring upstream server groups on-the-fly -via a simple HTTP interface without the need of restarting nginx. -The -http -or -stream -server group must reside in the shared memory. - -This module was available as part of our -commercial subscription -until 1.13.10. -It was superseded by the -ngx_http_api_module module -in 1.13.3. - - - -
- - -
- - - -upstream backend { - zone upstream_backend 64k; - - ... -} - -server { - location /upstream_conf { - upstream_conf; - allow 127.0.0.1; - deny all; - } -} - - - -
- - -
- - - - -location - - -Turns on the HTTP interface of upstream configuration in the surrounding -location. -Access to this location should be -limited. - - - -Configuration commands can be used to: - - -view the group configuration; - -view, modify, or remove a server; - -add a new server. - - - -Since addresses in a group are not required to be unique, specific -servers in a group are referenced by their IDs. -IDs are assigned automatically and shown when adding a new server -or viewing the group configuration. - - - - -A configuration command consists of parameters passed as request arguments, -for example: - -http://127.0.0.1/upstream_conf?upstream=backend - - - - -The following parameters are supported: - - - - -stream= - -Selects a -stream -upstream server group. -Without this parameter, selects an -http -upstream server group. - - - -upstream=name - -Selects a group to work with. -This parameter is mandatory. - - - -id=number - -Selects a server for viewing, modifying, or removing. - - - -remove= - -Removes a server from the group. - - - -add= - -Adds a new server to the group. - - - -backup= - -Required to add a backup server. - -Before version 1.7.2, backup= -was also required to view, modify, or remove existing backup servers. - - - - -server=address - -Same as the “address” parameter -of the -http -or -stream -upstream server. - -When adding a server, it is possible to specify it as a domain name. -In this case, changes of the IP addresses that correspond to a domain name -will be monitored and automatically applied to the upstream -configuration without the need of restarting nginx (1.7.2). -This requires the “resolver” directive in the -http -or -stream -block. -See also the “resolve” parameter -of the -http -or -stream -upstream server. - - - - -service=name - -Same as the “service” parameter -of the -http -or -stream -upstream server (1.9.13). - - - -weight=number - -Same as the “weight” parameter -of the -http -or -stream -upstream server. - - - -max_conns=number - -Same as the “max_conns” parameter -of the -http -or -stream -upstream server. - - - -max_fails=number - -Same as the “max_fails” parameter -of the -http -or -stream -upstream server. - - - -fail_timeout=time - -Same as the “fail_timeout” parameter -of the -http -or -stream -upstream server. - - - -slow_start=time - -Same as the “slow_start” parameter -of the -http -or -stream -upstream server. - - - -down= - -Same as the “down” parameter -of the -http -or -stream -upstream server. - - -drain= - -Puts the -http -upstream server into the “draining” mode (1.7.5). -In this mode, only requests -bound to the server -will be proxied to it. - - - -up= - -The opposite of the “down” parameter -of the -http -or -stream -upstream server. - - - -route=string - -Same as the “route” parameter of the -http -upstream server. - - - - -The first three parameters select an object. -This can be either the whole http or stream upstream server group, -or a specific server. -Without other parameters, the configuration of the selected -group or server is shown. - - - -For example, to view the configuration of the whole group, send: - -http://127.0.0.1/upstream_conf?upstream=backend - - -To view the configuration of a specific server, also specify its ID: - -http://127.0.0.1/upstream_conf?upstream=backend&id=42 - - - - -To add a new server, -specify its address in the “server=” parameter. -Without other parameters specified, a server will be added with other -parameters set to their default values (see the -http -or -stream -“server” directive). - - - -For example, to add a new primary server, send: - -http://127.0.0.1/upstream_conf?add=&upstream=backend&server=127.0.0.1:8080 - - -To add a new backup server, send: - -http://127.0.0.1/upstream_conf?add=&upstream=backend&backup=&server=127.0.0.1:8080 - - -To add a new primary server, -set its parameters to non-default values -and mark it as “down”, send: - -http://127.0.0.1/upstream_conf?add=&upstream=backend&server=127.0.0.1:8080&weight=2&down= - - -To remove a server, specify its ID: - -http://127.0.0.1/upstream_conf?remove=&upstream=backend&id=42 - - -To mark an existing server as “down”, send: - -http://127.0.0.1/upstream_conf?upstream=backend&id=42&down= - - -To modify the address of an existing server, send: - -http://127.0.0.1/upstream_conf?upstream=backend&id=42&server=192.0.2.3:8123 - - -To modify other parameters of an existing server, send: - -http://127.0.0.1/upstream_conf?upstream=backend&id=42&max_fails=3&weight=4 - - -The above examples are for an -http -upstream server group. -Similar examples for a -stream -upstream server group require the “stream=” parameter. - - - - -
- -
diff --git a/xml/en/docs/http/ngx_http_upstream_hc_module.xml b/xml/en/docs/http/ngx_http_upstream_hc_module.xml deleted file mode 100644 --- a/xml/en/docs/http/ngx_http_upstream_hc_module.xml +++ /dev/null @@ -1,409 +0,0 @@ - - - - - - - - -
- - -The ngx_http_upstream_hc_module module -allows enabling periodic health checks of the servers in a -group -referenced in the surrounding location. -The server group must reside in the -shared memory. - - - -If a health check fails, -the server will be considered unhealthy. -If several health checks are defined for the same group of servers, -a single failure of any check will make the corresponding server be -considered unhealthy. -Client requests are not passed to unhealthy servers -and servers in the “checking” state. - - - - -Please note that most of the variables will have empty values -when used with health checks. - - - - - -This module is available as part of our -commercial subscription. - - - -
- - -
- - - -upstream dynamic { - zone upstream_dynamic 64k; - - server backend1.example.com weight=5; - server backend2.example.com:8080 fail_timeout=5s slow_start=30s; - server 192.0.2.1 max_fails=3; - - server backup1.example.com:8080 backup; - server backup2.example.com:8080 backup; -} - -server { - location / { - proxy_pass http://dynamic; - health_check; - } -} - -With this configuration, nginx will send “/” requests to each -server in the backend group every five seconds. -If any communication error or timeout occurs, or a -proxied server responds with the status code other than -2xx or 3xx, the health check will fail, and the server will -be considered unhealthy. - - - -Health checks can be configured to test the status code of a response, -presence of certain header fields and their values, -and the body contents. -Tests are configured separately using the directive -and referenced in the match parameter -of the directive: - -http { - server { - ... - location / { - proxy_pass http://backend; - health_check match=welcome; - } - } - - match welcome { - status 200; - header Content-Type = text/html; - body ~ "Welcome to nginx!"; - } -} - -This configuration shows that in order for a health check to pass, the response -to a health check request should succeed, have status 200, -and contain “Welcome to nginx!” in the body. - - -
- - -
- - -[parameters] - -location - - -Enables periodic health checks of the servers in a -group -referenced in the surrounding location. - - - -The following optional parameters are supported: - - - -interval=time - - -sets the interval between two consecutive health checks, -by default, 5 seconds. - - - -jitter=time - - -sets the time within which -each health check will be randomly delayed, -by default, there is no delay. - - - -fails=number - - -sets the number of consecutive failed health checks of a particular server -after which this server will be considered unhealthy, -by default, 1. - - - -passes=number - - -sets the number of consecutive passed health checks of a particular server -after which the server will be considered healthy, -by default, 1. - - - -uri=uri - - -defines the URI used in health check requests, -by default, “/”. - - - -mandatory [persistent] - - - -sets the initial “checking” state for a server -until the first health check is completed (1.11.7). -Client requests are not passed to servers in the “checking” state. -If the parameter is not specified, -the server will be initially considered healthy. - - - -The persistent parameter (1.19.7) -sets the initial “up” state for a server after reload -if the server was considered healthy before reload. - - - - - -match=name - - -specifies the match block configuring the tests that a -response should pass in order for a health check to pass. -By default, the response should have status code 2xx or 3xx. - - - -port=number - - -defines the port used when connecting to a server -to perform a health check (1.9.7). -By default, equals the - port. - - - -type=grpc -[grpc_service=name] -[grpc_status=code] - - -enables periodic -health -checks of a gRPC server -or a particular gRPC service specified with the optional -grpc_service parameter (1.19.5). -If the server does not support the gRPC Health Checking Protocol, -the optional grpc_status parameter can be used -to specify non-zero gRPC -status -(for example, -status code “12” / “UNIMPLEMENTED”) -that will be treated as healthy: - -health_check mandatory type=grpc grpc_status=12; - -The type=grpc parameter -must be specified after all other directive parameters, -grpc_service and grpc_status -must follow type=grpc. -The parameter is not compatible with -uri or -match parameters. - - - -keepalive_time=time - - -enables keepalive -connections for health checks and specifies the time during which -requests can be processed through one keepalive connection (1.21.7). -By default keepalive connections are disabled. - - - - - - - - - -name - -http - - -Defines the named test set used to verify responses to health check requests. - - - -The following items can be tested in a response: - - -status 200; -status is 200 - -status ! 500; -status is not 500 - -status 200 204; -status is 200 or 204 - -status ! 301 302; -status is neither 301 nor 302 - -status 200-399; -status is in the range from 200 to 399 - -status ! 400-599; -status is not in the range from 400 to 599 - -status 301-303 307; -status is either 301, 302, 303, or 307 - - - - - -header Content-Type = text/html; - -header contains
Content-Type
-with value text/html -
- -header Content-Type != text/html; - -header contains
Content-Type
-with value other than text/html -
- -header Connection ~ close; - -header contains
Connection
-with value matching regular expression close -
- -header Connection !~ close; - -header contains
Connection
-with value not matching regular expression close -
- -header Host; -header contains
Host
- -header ! X-Accel-Redirect; -header lacks
X-Accel-Redirect
- -
- - - -body ~ "Welcome to nginx!"; - -body matches regular expression “Welcome to nginx!” - - -body !~ "Welcome to nginx!"; - -body does not match regular expression “Welcome to nginx!” - - - - - - -require - $variable - ...; - -all specified variables are not empty and not equal to “0” (1.15.9). - - - -
- - -If several tests are specified, -the response matches only if it matches all tests. - -Only the first 256k of the response body are examined. - - - - -Examples: - -# status is 200, content type is "text/html", -# and body contains "Welcome to nginx!" -match welcome { - status 200; - header Content-Type = text/html; - body ~ "Welcome to nginx!"; -} - - - -# status is not one of 301, 302, 303, or 307, and header does not have "Refresh:" -match not_redirect { - status ! 301-303 307; - header ! Refresh; -} - - - -# status ok and not in maintenance mode -match server_ok { - status 200-399; - body !~ "maintenance mode"; -} - - - -# status is 200 or 204 -map $upstream_status $good_status { - 200 1; - 204 1; -} - -match server_ok { - require $good_status; -} - - - - -
- -
- -
diff --git a/xml/en/docs/http/ngx_http_upstream_module.xml b/xml/en/docs/http/ngx_http_upstream_module.xml --- a/xml/en/docs/http/ngx_http_upstream_module.xml +++ b/xml/en/docs/http/ngx_http_upstream_module.xml @@ -10,7 +10,7 @@ + rev="89">
@@ -49,36 +49,6 @@ server { - -Dynamically configurable group with -periodic health checks is -available as part of our -commercial subscription: - -resolver 10.0.0.1; - -upstream dynamic { - zone upstream_dynamic 64k; - - server backend1.example.com weight=5; - server backend2.example.com:8080 fail_timeout=5s slow_start=30s; - server 192.0.2.1 max_fails=3; - server backend3.example.com resolve; - server backend4.example.com service=http resolve; - - server backup1.example.com:8080 backup; - server backup2.example.com:8080 backup; -} - -server { - location / { - proxy_pass http://dynamic; - health_check; - } -} - - -
@@ -168,11 +138,6 @@ and the shared memorymax_conns value.
- -Since version 1.5.9 and prior to version 1.11.5, -this parameter was available as part of our -commercial subscription. - @@ -239,117 +204,9 @@ marks the server as permanently unavaila
-Additionally, -the following parameters are available as part of our -commercial subscription: - - - -resolve - - -monitors changes of the IP addresses -that correspond to a domain name of the server, -and automatically modifies the upstream configuration -without the need of restarting nginx (1.5.12). -The server group must reside in the shared memory. - -In order for this parameter to work, -the resolver directive -must be specified in the -http block -or in the corresponding upstream block. - - - - -route=string - - -sets the server route name. - - - -service=name - - -enables resolving of DNS -SRV -records and sets the service name (1.9.13). -In order for this parameter to work, it is necessary to specify -the parameter for the server -and specify a hostname without a port number. - -If the service name does not contain a dot (“.”), then -the RFC-compliant name -is constructed -and the TCP protocol is added to the service prefix. -For example, to look up the -_http._tcp.backend.example.com SRV record, -it is necessary to specify the directive: - -server backend.example.com service=http resolve; - -If the service name contains one or more dots, then the name is constructed -by joining the service prefix and the server name. -For example, to look up the _http._tcp.backend.example.com -and server1.backend.example.com SRV records, -it is necessary to specify the directives: - -server backend.example.com service=_http._tcp resolve; -server example.com service=server1.backend resolve; - - - - -Highest-priority SRV records -(records with the same lowest-number priority value) -are resolved as primary servers, -the rest of SRV records are resolved as backup servers. -If the parameter is specified for the server, -high-priority SRV records are resolved as backup servers, -the rest of SRV records are ignored. - - - - -slow_start=time - - -sets the time during which the server will recover its weight -from zero to a nominal value, when unhealthy server becomes -healthy, -or when the server becomes available after a period of time -it was considered unavailable. -Default value is zero, i.e. slow start is disabled. -The parameter cannot be used along with the -, , and -load balancing methods. - - - - -drain - - -puts the server into the “draining” mode (1.13.6). -In this mode, only requests bound to the server -will be proxied to it. - -Prior to version 1.13.6, -the parameter could be changed only with the -API module. - - - - - - - - -If there is only a single server in a group, max_fails, -fail_timeout and slow_start parameters +If there is only a single server in a group, +max_fails and fail_timeout parameters are ignored, and such a server will never be considered unavailable. @@ -371,70 +228,6 @@ Several groups may share the same zone. In this case, it is enough to specify the size only once. - -Additionally, -as part of our commercial subscription, -such groups allow changing the group membership -or modifying the settings of a particular server -without the need of restarting nginx. -The configuration is accessible via the -API module (1.13.3). - -Prior to version 1.13.3, -the configuration was accessible only via a special location -handled by -. - - - - - - - -file - -upstream -1.9.7 - - -Specifies a file that keeps the state -of the dynamically configurable group. - - - -Examples: - -state /var/lib/nginx/state/servers.conf; # path for Linux -state /var/db/nginx/state/servers.conf; # path for FreeBSD - - - - -The state is currently limited to the list of servers with their parameters. -The file is read when parsing the configuration and is updated each time -the upstream configuration is -changed. -Changing the file content directly should be avoided. -The directive cannot be used -along with the directive. - - - - -Changes made during -configuration reload -or binary upgrade -can be lost. - - - - - -This directive is available as part of our -commercial subscription. - - - @@ -695,68 +488,6 @@ connection to an upstream server will st - - - -upstream -1.9.2 - - -Allows proxying requests with -NTLM -Authentication. -The upstream connection is bound to the client connection -once the client sends a request with the
Authorization
-header field value -starting with “Negotiate” or “NTLM”. -Further client requests will be proxied through the same upstream connection, -keeping the authentication context. -
- - -In order for NTLM authentication to work, -it is necessary to enable keepalive connections to upstream servers. -The -directive should be set to “1.1” -and the
Connection
header field should be cleared: - -upstream http_backend { - server 127.0.0.1:8080; - - ntlm; -} - -server { - ... - - location /http/ { - proxy_pass http://http_backend; - proxy_http_version 1.1; - proxy_set_header Connection ""; - ... - } -} - -
- - - -When using load balancer methods other than the default -round-robin method, it is necessary to activate them before -the ntlm directive. - - - - - -This directive is available as part of our -commercial subscription. - - - -
- - @@ -775,88 +506,6 @@ weighted round-robin balancing method. - - - header | - last_byte - [inflight] - -upstream -1.7.10 - - -Specifies that a group should use a load balancing method where a request -is passed to the server with the least average response time and -least number of active connections, taking into account weights of servers. -If there are several such servers, they are tried in turn using a -weighted round-robin balancing method. - - - -If the header parameter is specified, -time to receive the -response header is used. -If the last_byte parameter is specified, -time to receive the full response -is used. -If the inflight parameter is specified (1.11.6), -incomplete requests are also taken into account. - -Prior to version 1.11.6, incomplete requests were taken into account by default. - - - - - -This directive is available as part of our -commercial subscription. - - - - - - - - -number -[timeout=time] - -upstream -1.5.12 - - -If an upstream server cannot be selected immediately -while processing a request, -the request will be placed into the queue. -The directive specifies the maximum number of requests -that can be in the queue at the same time. -If the queue is filled up, -or the server to pass the request to cannot be selected within -the time period specified in the timeout parameter, -the -error will be returned to the client. - - - -The default value of the timeout parameter is 60 seconds. - - - - -When using load balancer methods other than the default -round-robin method, it is necessary to activate them before -the queue directive. - - - -This directive is available as part of our -commercial subscription. - - - - - - [two [method]] @@ -880,379 +529,6 @@ which passes a request to a server with the least number of active connections. - -The least_time method passes a request to a server -with the least average response time and least number of active connections. -If least_time=header is specified, the time to receive the -response header is used. -If least_time=last_byte is specified, the time to receive the -full response is used. - -The least_time method is available as a part of our -commercial subscription. - - - - - - - - - address ... - [valid=time] - [ipv4=on|off] - [ipv6=on|off] - [status_zone=zone] - -upstream -1.17.5 - - -Configures name servers used to resolve names of upstream servers -into addresses, for example: - -resolver 127.0.0.1 [::1]:5353; - -The address can be specified as a domain name or IP address, -with an optional port. -If port is not specified, the port 53 is used. -Name servers are queried in a round-robin fashion. - - - -By default, nginx will look up both IPv4 and IPv6 addresses while resolving. -If looking up of IPv4 or IPv6 addresses is not desired, -the ipv4=off (1.23.1) or -the ipv6=off parameter can be specified. - - - -By default, nginx caches answers using the TTL value of a response. -An optional valid parameter allows overriding it: - -resolver 127.0.0.1 [::1]:5353 valid=30s; - - -To prevent DNS spoofing, it is recommended -configuring DNS servers in a properly secured trusted local network. - - - - -The optional status_zone parameter -enables -collection -of DNS server statistics of requests and responses -in the specified zone. - - - - -This directive is available as part of our -commercial subscription. - - - - - - - -time -30s -upstream -1.17.5 - - -Sets a timeout for name resolution, for example: - -resolver_timeout 5s; - - - - - -This directive is available as part of our -commercial subscription. - - - - - - - - - cookie name - [expires=time] - [domain=domain] - [httponly] - [samesite=strict|lax|none|$variable] - [secure] - [path=path] - - route $variable ... - - learn - create=$variable - lookup=$variable - zone=name:size - [timeout=time] - [header] - [sync] - -upstream -1.5.7 - - -Enables session affinity, which causes requests from the same client to be -passed to the same server in a group of servers. -Three methods are available: - -cookie - - - -When the cookie method is used, information about the -designated server is passed in an HTTP cookie generated by nginx: - -upstream backend { - server backend1.example.com; - server backend2.example.com; - - sticky cookie srv_id expires=1h domain=.example.com path=/; -} - - - - -A request that comes from a client not yet bound to a particular server -is passed to the server selected by the configured balancing method. -Further requests with this cookie will be passed to the designated server. -If the designated server cannot process a request, the new server is -selected as if the client has not been bound yet. - - -As a load balancing method always tries to evenly distribute the load -considering already bound requests, -the server with a higher number of active bound requests -has less possibility of getting new unbound requests. - - - - -The first parameter sets the name of the cookie to be set or inspected. -The cookie value is -a hexadecimal representation of the MD5 hash of the IP address and port, -or of the UNIX-domain socket path. -However, if the “route” parameter of the - directive is specified, the cookie value will be -the value of the “route” parameter: - -upstream backend { - server backend1.example.com route=a; - server backend2.example.com route=b; - - sticky cookie srv_id expires=1h domain=.example.com path=/; -} - -In this case, the value of the “srv_id” cookie will be -either a or b. - - - -Additional parameters may be as follows: - - -expires=time - -Sets the time for which a browser should keep the cookie. -The special value max will cause the cookie to expire on -“31 Dec 2037 23:55:55 GMT”. -If the parameter is not specified, it will cause the cookie to expire at -the end of a browser session. - - -domain=domain - -Defines the domain for which the cookie is set. -Parameter value can contain variables (1.11.5). - - -httponly - -Adds the HttpOnly attribute to the cookie (1.7.11). - - -samesite=strict | -lax | none | $variable - -Adds the SameSite (1.19.4) attribute to the cookie -with one of the following values: -Strict, -Lax, -None, or -using variables (1.23.3). -In the latter case, if the variable value is empty, -the SameSite attribute will not be added to the cookie, -if the value is resolved to -Strict, -Lax, or -None, -the corresponding value will be assigned, -otherwise the Strict value will be assigned. - - -secure - -Adds the Secure attribute to the cookie (1.7.11). - - -path=path - -Defines the path for which the cookie is set. - - - -If any parameters are omitted, the corresponding cookie fields are not set. - - - -route - - - -When the route method is used, proxied server assigns -client a route on receipt of the first request. -All subsequent requests from this client will carry routing information -in a cookie or URI. -This information is compared with the “route” parameter -of the directive to identify the server to which the -request should be proxied. -If the “route” parameter is not specified, the route name -will be a hexadecimal representation of the MD5 hash of the IP address and port, -or of the UNIX-domain socket path. -If the designated server cannot process a request, the new server is -selected by the configured balancing method as if there is no routing -information in the request. - - - -The parameters of the route method specify variables that -may contain routing information. -The first non-empty variable is used to find the matching server. - - - -Example: - -map $cookie_jsessionid $route_cookie { - ~.+\.(?P<route>\w+)$ $route; -} - -map $request_uri $route_uri { - ~jsessionid=.+\.(?P<route>\w+)$ $route; -} - -upstream backend { - server backend1.example.com route=a; - server backend2.example.com route=b; - - sticky route $route_cookie $route_uri; -} - -Here, the route is taken from the “JSESSIONID” cookie -if present in a request. -Otherwise, the route from the URI is used. - - - - -learn - - -When the learn method (1.7.1) is used, nginx -analyzes upstream server responses and learns server-initiated sessions -usually passed in an HTTP cookie. - -upstream backend { - server backend1.example.com:8080; - server backend2.example.com:8081; - - sticky learn - create=$upstream_cookie_examplecookie - lookup=$cookie_examplecookie - zone=client_sessions:1m; -} - - -In the example, the upstream server creates a session by setting the -cookie “EXAMPLECOOKIE” in the response. -Further requests with this cookie will be passed to the same server. -If the server cannot process the request, the new server is -selected as if the client has not been bound yet. - - - -The parameters create and lookup -specify variables that indicate how new sessions are created and existing -sessions are searched, respectively. -Both parameters may be specified more than once, in which case the first -non-empty variable is used. - - - -Sessions are stored in a shared memory zone, whose name and -size are configured by the zone parameter. -One megabyte zone can store about 4000 sessions on the 64-bit platform. -The sessions that are not accessed during the time specified by the -timeout parameter get removed from the zone. -By default, timeout is set to 10 minutes. - - - -The header parameter (1.13.1) allows creating a session -right after receiving response headers from the upstream server. - - - -The sync parameter (1.13.8) enables -synchronization -of the shared memory zone. - - - - - - - - -This directive is available as part of our -commercial subscription. - - - - - - - -name -[expires=time] -[domain=domain] -[path=path] - -upstream - - -This directive is obsolete since version 1.5.7. -An equivalent - directive with a new syntax should be used instead: - -sticky cookie name -[expires=time] -[domain=domain] -[path=path]; - - -
@@ -1349,25 +625,6 @@ as for the variables that start with the Only the header fields from the response of the last server are saved. -$upstream_last_server_name - -keeps the name of last selected upstream server (1.25.3); -allows passing it -through SNI: - -proxy_ssl_server_name on; -proxy_ssl_name $upstream_last_server_name; - - - - -This variable is available as part of our -commercial subscription. - - - - - $upstream_queue_time keeps time the request spent in the upstream queue diff --git a/xml/en/docs/http/ngx_http_uwsgi_module.xml b/xml/en/docs/http/ngx_http_uwsgi_module.xml --- a/xml/en/docs/http/ngx_http_uwsgi_module.xml +++ b/xml/en/docs/http/ngx_http_uwsgi_module.xml @@ -10,7 +10,7 @@ + rev="51">
@@ -383,11 +383,7 @@ will be cached. [manager_threshold=time] [loader_files=number] [loader_sleep=time] - [loader_threshold=time] - [purger=on|off] - [purger_files=number] - [purger_sleep=time] - [purger_threshold=time] + [loader_threshold=time] http @@ -433,15 +429,6 @@ In addition, all active keys and informa in a shared memory zone, whose name and size are configured by the keys_zone parameter. One megabyte zone can store about 8 thousand keys. - -As part of -commercial subscription, -the shared memory zone also stores extended -cache information, -thus, it is required to specify a larger zone size for the same number of keys. -For example, -one megabyte zone can store about 4 thousand keys. - @@ -485,56 +472,6 @@ parameter (by default, 50 milliseconds) -Additionally, -the following parameters are available as part of our -commercial subscription: - - - - - - -purger=on|off - - -Instructs whether cache entries that match a -wildcard key -will be removed from the disk by the cache purger (1.7.12). -Setting the parameter to on -(default is off) -will activate the “cache purger” process that -permanently iterates through all cache entries -and deletes the entries that match the wildcard key. - - - -purger_files=number - - -Sets the number of items that will be scanned during one iteration (1.7.12). -By default, purger_files is set to 10. - - - -purger_threshold=number - - -Sets the duration of one iteration (1.7.12). -By default, purger_threshold is set to 50 milliseconds. - - - -purger_sleep=number - - -Sets a pause between iterations (1.7.12). -By default, purger_sleep is set to 50 milliseconds. - - - - - - In versions 1.7.3, 1.7.7, and 1.11.10 cache header format has been changed. Previously cached responses will be considered invalid @@ -545,63 +482,6 @@ after upgrading to a newer nginx version - -string ... - -http -server -location -1.5.7 - - -Defines conditions under which the request will be considered a cache -purge request. -If at least one value of the string parameters is not empty and is not equal -to “0” then the cache entry with a corresponding -cache key is removed. -The result of successful operation is indicated by returning -the response. - - - -If the cache key of a purge request ends -with an asterisk (“*”), all cache entries matching the -wildcard key will be removed from the cache. -However, these entries will remain on the disk until they are deleted -for either inactivity, -or processed by the cache purger (1.7.12), -or a client attempts to access them. - - - -Example configuration: - -uwsgi_cache_path /data/nginx/cache keys_zone=cache_zone:10m; - -map $request_method $purge_method { - PURGE 1; - default 0; -} - -server { - ... - location / { - uwsgi_pass backend; - uwsgi_cache cache_zone; - uwsgi_cache_key $uri; - uwsgi_cache_purge $purge_method; - } -} - - -This functionality is available as part of our -commercial subscription. - - - - - - on | off off diff --git a/xml/en/docs/index.xml b/xml/en/docs/index.xml --- a/xml/en/docs/index.xml +++ b/xml/en/docs/index.xml @@ -8,7 +8,7 @@
@@ -219,21 +219,11 @@ ngx_http_addition_module - -ngx_http_api_module - - - ngx_http_auth_basic_module - -ngx_http_auth_jwt_module - - - ngx_http_auth_request_module @@ -264,11 +254,6 @@ ngx_http_empty_gif_module - -ngx_http_f4f_module - - - ngx_http_fastcgi_module @@ -314,11 +299,6 @@ ngx_http_headers_module - -ngx_http_hls_module - - - ngx_http_image_filter_module @@ -329,21 +309,11 @@ ngx_http_index_module - -ngx_http_internal_redirect_module - - - ngx_http_js_module - -ngx_http_keyval_module - - - ngx_http_limit_conn_module @@ -389,11 +359,6 @@ ngx_http_proxy_module - -ngx_http_proxy_protocol_vendor_module - - - ngx_http_random_index_module @@ -424,11 +389,6 @@ ngx_http_secure_link_module - -ngx_http_session_log_module - - - ngx_http_slice_module @@ -449,11 +409,6 @@ ngx_http_ssl_module - -ngx_http_status_module - - - ngx_http_stub_status_module @@ -469,16 +424,6 @@ ngx_http_upstream_module - -ngx_http_upstream_conf_module - - - - -ngx_http_upstream_hc_module - - - ngx_http_userid_module @@ -581,11 +526,6 @@ ngx_stream_js_module - -ngx_stream_keyval_module - - - ngx_stream_limit_conn_module @@ -601,26 +541,11 @@ ngx_stream_map_module - -ngx_stream_mqtt_preread_module - - - - -ngx_stream_mqtt_filter_module - - - ngx_stream_proxy_module - -ngx_stream_proxy_protocol_vendor_module - - - ngx_stream_realip_module @@ -655,16 +580,6 @@ ngx_stream_ssl_preread_module ngx_stream_upstream_module - - -ngx_stream_upstream_hc_module - - - - -ngx_stream_zone_sync_module - - @@ -676,16 +591,6 @@ ngx_stream_zone_sync_module ngx_google_perftools_module - - -ngx_mgmt_module - - - - -ngx_otel_module - - diff --git a/xml/en/docs/mail/ngx_mail_core_module.xml b/xml/en/docs/mail/ngx_mail_core_module.xml --- a/xml/en/docs/mail/ngx_mail_core_module.xml +++ b/xml/en/docs/mail/ngx_mail_core_module.xml @@ -10,7 +10,7 @@ + rev="22">
@@ -314,8 +314,7 @@ parameters --without-mail_imap_ address ... [valid=time] [ipv4=on|off] - [ipv6=on|off] - [status_zone=zone] + [ipv6=on|off] off off mail @@ -370,16 +369,6 @@ configuring DNS servers in a properly se - -The optional status_zone parameter (1.17.1) -enables -collection -of DNS server statistics of requests and responses -in the specified zone. -The parameter is available as part of our -commercial subscription. - - The special value off disables resolving. diff --git a/xml/en/docs/ngx_mgmt_module.xml b/xml/en/docs/ngx_mgmt_module.xml deleted file mode 100644 --- a/xml/en/docs/ngx_mgmt_module.xml +++ /dev/null @@ -1,407 +0,0 @@ - - - - - - - - -
- - -The ngx_mgmt_module module enables reporting of -current nginx installation to -NGINX -Management Suite Instance Manager (1.25.3). -By default, nginx sends usage info -to the Instance Manager located at nginx-mgmt.local -every 30 minutes using the SSL connection. -The system resolver is used unless -a custom resolver is configured -and is invoked only once when the -configuration is loaded. - - - - -This module is available as part of our -commercial subscription. - - - -
- - -
- - - -mgmt { - usage_report endpoint=nginx-mgmt.local interval=30m; - resolver DNS_IP; - - uuid_file /var/lib/nginx/nginx.id; - - ssl_protocols TLSv1.2 TLSv1.3; - ssl_ciphers DEFAULT; - - ssl_certificate client_cert.pem; - ssl_certificate_key client_cert.key; - - # configure server certificate verification - # to validate the authenticity of NMS - ssl_trusted_certificate trusted_ca_cert.crt; - ssl_verify on; - ssl_verify_depth 2; -} - - - -
- - -
- - -time -15s -mgmt - - -Defines a timeout for establishing a connection with the Instance Manager. - - - - - - - - -main - - -Provides the configuration file context -in which the management server directives are specified. - - - - - - -time -60s -mgmt - - -Defines a timeout for reading a response from the Instance Manager. -The timeout is set only between two successive read operations, -not for the transmission of the whole response. -If the Instance Manager does not transmit anything within this time, -the connection is closed. - - - - - - - - address ... - [valid=time] - [ipv4=on|off] - [ipv6=on|off] - [status_zone=zone] - -mgmt - - -Configures name servers used to resolve names of the Instance Manager -into addresses, for example: - -resolver 127.0.0.1 [::1]:5353; - -The address can be specified as a domain name or IP address, -with an optional port. -If port is not specified, the port 53 is used. -Name servers are queried in a round-robin fashion. - - - -By default, nginx will look up both IPv4 and IPv6 addresses while resolving. -If looking up of IPv4 or IPv6 addresses is not desired, -the ipv4=off or -the ipv6=off parameter can be specified. - - - -By default, nginx caches answers using the TTL value of a response. -An optional valid parameter allows overriding it: - -resolver 127.0.0.1 [::1]:5353 valid=30s; - - -To prevent DNS spoofing, it is recommended -configuring DNS servers in a properly secured trusted local network. - - - - -The optional status_zone parameter -enables -collection -of DNS server statistics of requests and responses -in the specified zone. - - - - - - -time -30s -mgmt - - -Sets a timeout for name resolution. - - - - - - -time -60s -mgmt - - -Sets a timeout for transmitting a request to the Instance Manager. -The timeout is set only between two successive write operations, -not for the transmission of the whole request. -If the Instance Manager does not receive anything within this time, -the connection is closed. - - - - - - -on | off -on -mgmt - - -Enables the HTTPS protocol for all -connections to the Instance Manager. - - - - - - -file - -mgmt - - -Specifies a file with the certificate in the PEM format -used for authentication to the Instance Manager. - - - - - - -file - -mgmt - - -Specifies a file with the secret key in the PEM format -used for authentication to the Instance Manager. - - - - - - -ciphers -DEFAULT -mgmt - - -Specifies the enabled ciphers for requests to the Instance Manager. -The ciphers are specified in the format understood by the OpenSSL library. - - - -The full list can be viewed using the -“openssl ciphers” command. - - - - - - -file - -mgmt - - -Specifies a file with revoked certificates (CRL) -in the PEM format used to verify -the certificate of the Instance Manager. - - - - - - -name -ssl_name host -mgmt - - -Allows overriding the server name used to -verify -the certificate of the Instance Manager and to be -passed through SNI -when establishing a connection with the Instance Manager. - - - - - - -file - -mgmt - - -Specifies a file with passphrases for -secret keys -where each passphrase is specified on a separate line. -Passphrases are tried in turn when loading the key. - - - - - - - - [SSLv2] - [SSLv3] - [TLSv1] - [TLSv1.1] - [TLSv1.2] - [TLSv1.3] -TLSv1 TLSv1.1 TLSv1.2 TLSv1.3 -mgmt - - -Enables the specified protocols for requests to the Instance Manager. - - - - - - -on | off -off -mgmt - - -Enables or disables passing of the server name through -TLS -Server Name Indication extension (SNI, RFC 6066) -when establishing a connection with the Instance Manager. - - - - - - -file - -mgmt - - -Specifies a file with trusted CA certificates in the PEM format -used to verify -the certificate of the Instance Manager. - - - - - - -on | off -off -mgmt - - -Enables or disables verification of the Instance Manager certificate. - - - - - - -number -1 -mgmt - - -Sets the verification depth in the Instance Manager certificates chain. - - - - - - - [endpoint=address] - [interval=time] - -mgmt - - -Sets the address and port for IP, -or the path for a UNIX-domain socket on which -the Instance Manager is installed, -by default nginx-mgmt.local. -The interval sets an interval between reports -to the Instance Manager, by default 30m. - - - - - - -file -logs/uuid -mgmt - - -Specifies a file that keeps the ID of nginx instance. - - - -Examples: - -uuid_file /var/lib/nginx/nginx.id; # path for Linux -uuid_file /var/db/nginx/nginx.id; # path for FreeBSD - - - - -Changing the file content directly should be avoided. - - - - -
- -
diff --git a/xml/en/docs/ngx_otel_module.xml b/xml/en/docs/ngx_otel_module.xml deleted file mode 100644 --- a/xml/en/docs/ngx_otel_module.xml +++ /dev/null @@ -1,347 +0,0 @@ - - - - - - - - -
- - -The ngx_otel_module module (1.23.4) provides -OpenTelemetry -distributed tracing support. -The module supports -W3C -context propagation and OTLP/gRPC export protocol. - - - - -This module is available as part of our -commercial subscription -in nginx-plus-module-otel package. -After installation, the module can be loaded -dynamically. - - - -
- - -
- - - -load_module modules/ngx_otel_module.so; - -events { -} - -http { - - otel_exporter { - endpoint localhost:4317; - } - - server { - listen 127.0.0.1:8080; - - location / { - otel_trace on; - otel_trace_context inject; - - proxy_pass http://backend; - } - } -} - - - -
- - -
- - - - -http - - -Specifies OTel data export parameters: - - - -endpoint - -the address of OTLP/gRPC endpoint that will accept telemetry data. - - -interval - -the maximum interval between two exports, -by default is 5 seconds. - - -batch_size - -the maximum number of spans to be sent in one batch per worker, -by default is 512. - - -batch_count - -the number of pending batches per worker, -spans exceeding the limit are dropped, -by default is 4. - - - -Example: - -otel_exporter { - endpoint localhost:4317; - interval 5s; - batch_size 512; - batch_count 4; -} - - - - - - - -name -unknown_service:nginx -http - - -Sets the -“service.name” -attribute of the OTel resource. - - - - - - -on | - off | - $variable -off -http -server -location - - -Enables or disables OpenTelemetry tracing. -The directive can also be enabled by specifying a variable: - -split_clients "$otel_trace_id" $ratio_sampler { - 10% on; - * off; -} - -server { - location / { - otel_trace $ratio_sampler; - otel_trace_context inject; - proxy_pass http://backend; - } -} - - - - - - - -extract | - inject | - propagate | - ignore -ignore -http -server -location - - -Specifies how to propagate -traceparent/tracestate headers: - - - -extract - -uses an existing trace context from the request, -so that the identifiers of -a trace and -the parent span -are inherited from the incoming request. - - -inject - -adds a new context to the request, overwriting existing headers, if any. - - -propagate - -updates the existing context -(combines and ). - - -ignore - -skips context headers processing. - - - - - - - - - -name - -http -server -location - - -Defines the name of the OTel -span. -By default, it is a name of the location for a request. -The name can contain variables. - - - - - - -name value - -http -server -location - - -Adds a custom OTel span attribute. -The value can contain variables. - - - - -
- - -
- - -The following span attributes -are added automatically: - - - - -http.method - - - -http.target - - - -http.route - - - -http.scheme - - - -http.flavor - - - -http.user_agent - - - -http.request_content_length - - - -http.response_content_length - - - -http.status_code - - - -net.host.name - - - -net.host.port - - - -net.sock.peer.addr - - - -net.sock.peer.port - - - - - -
- - -
- - - - -$otel_trace_id - -the identifier of the trace the current span belongs to, -for example, 56552bc4daa3bf39c08362527e1dd6c4 - - -$otel_span_id - -the identifier of the current span, -for example, 4c0b8531ec38ca59 - - -$otel_parent_id - -the identifier of the parent span, -for example, dc94d281b0f884ea - - -$otel_parent_sampled - -the “sampled” flag of the parent span, -can be “1” or “0” - - - - - -
- -
diff --git a/xml/en/docs/njs/examples.xml b/xml/en/docs/njs/examples.xml --- a/xml/en/docs/njs/examples.xml +++ b/xml/en/docs/njs/examples.xml @@ -9,7 +9,7 @@
+ rev="22">
@@ -198,72 +198,6 @@ export default {jwt_payload_sub};
-
- - -nginx.conf: - -js_import http.js; - -keyval_zone zone=foo:10m; -#... - -location /keyval { - js_content http.set_keyval; -} - -location /version { - js_content http.version; -} - -location /api { - api write=on; -} - - - - -http.js: - -async function set_keyval(r) { - let res = await r.subrequest('/api/7/http/keyvals/foo', - { method: 'POST', - body: JSON.stringify({ foo: 789, bar: "ss dd 00" })}); - - if (res.status >= 300) { - r.return(res.status, res.responseBody); - return; - } - - r.return(200); -} - -async function version(r) { - let res = await r.subrequest('/api/7/nginx', { method: 'GET' }); - - if (res.status != 200) { - r.return(res.status); - return; - } - - var json = JSON.parse(res.responseBody); - r.return(200, json.version); -} - -export default {set_keyval, version}; - - -The , -, -and directives -are available as part of our -commercial subscription. - - - -
- -
@@ -393,56 +327,6 @@ export default {redirect};
- -
- - -nginx.conf: - -js_import http.js; - -js_set $num_requests http.num_requests; - -keyval_zone zone=foo:10m; - -keyval $remote_addr $foo zone=foo; - -log_format bar '$remote_addr [$time_local] $num_requests'; -access_log logs/access.log bar; - -server { - listen 8000; - - location / { - root html; - } -} - - - - -http.js: - -function num_requests(r) -{ - var n = r.variables.foo; - n = n ? Number(n) + 1 : 1; - r.variables.foo = n; - return n; -} - -export default {num_requests}; - - -The and - directives -are available as part of our -commercial subscription. - - - -
-
diff --git a/xml/en/docs/stream/ngx_stream_core_module.xml b/xml/en/docs/stream/ngx_stream_core_module.xml --- a/xml/en/docs/stream/ngx_stream_core_module.xml +++ b/xml/en/docs/stream/ngx_stream_core_module.xml @@ -9,7 +9,7 @@ + rev="38">
@@ -342,8 +342,7 @@ the connection is closed. address ... [valid=time] [ipv4=on|off] - [ipv6=on|off] - [status_zone=zone] + [ipv6=on|off] stream server @@ -380,23 +379,6 @@ configuring DNS servers in a properly se - -The optional status_zone parameter (1.17.1) -enables -collection -of DNS server statistics of requests and responses -in the specified zone. -The parameter is available as part of our -commercial subscription. - - - - -Before version 1.11.3, this directive was available as part of our -commercial subscription. - - - @@ -412,10 +394,6 @@ Sets a timeout for name resolution, for resolver_timeout 5s; - -Before version 1.11.3, this directive was available as part of our -commercial subscription. - diff --git a/xml/en/docs/stream/ngx_stream_keyval_module.xml b/xml/en/docs/stream/ngx_stream_keyval_module.xml deleted file mode 100644 --- a/xml/en/docs/stream/ngx_stream_keyval_module.xml +++ /dev/null @@ -1,184 +0,0 @@ - - - - - - - - -
- - -The ngx_stream_keyval_module module (1.13.7) creates variables -with values taken from key-value pairs managed by the -API -or a variable that can also be set with -njs. - - - - -This module is available as part of our -commercial subscription. - - - -
- - -
- - - -http { - - server { - ... - location /api { - api write=on; - } - } -} - -stream { - - keyval_zone zone=one:32k state=/var/lib/nginx/state/one.keyval; - keyval $ssl_server_name $name zone=one; - - server { - listen 12345 ssl; - proxy_pass $name; - ssl_certificate /usr/local/nginx/conf/cert.pem; - ssl_certificate_key /usr/local/nginx/conf/cert.key; - } -} - - - -
- - -
- - - - key - $variable - zone=name - -stream - - -Creates a new $variable whose value -is looked up by the key in the key-value database. -Matching rules are defined by the -type parameter of the -keyval_zone directive. -The database is stored in a shared memory zone -specified by the zone parameter. - - - - - - - - zone=name:size - [state=file] - [timeout=time] - [type=string|ip|prefix] - [sync] - -stream - - -Sets the name and size of the shared memory zone -that keeps the key-value database. -Key-value pairs are managed by the -API. - - - -The optional state parameter specifies a file -that keeps the current state of the key-value database in the JSON format -and makes it persistent across nginx restarts. -Changing the file content directly should be avoided. - - - -Examples: - -keyval_zone zone=one:32k state=/var/lib/nginx/state/one.keyval; # path for Linux -keyval_zone zone=one:32k state=/var/db/nginx/state/one.keyval; # path for FreeBSD - - - - -The optional timeout parameter (1.15.0) sets -the time after which key-value pairs are removed from the zone. - - - -The optional type parameter (1.17.1) activates -an extra index optimized for matching the key of a certain type -and defines matching rules when evaluating -a keyval $variable. - -The index is stored in the same shared memory zone -and thus requires additional storage. - - - - -type=string - -default, no index is enabled; -variable lookup is performed using exact match -of the record key and a search key - - -type=ip - -the search key is the textual representation of IPv4 or IPv6 address -or CIDR range; -to match a record key, the search key must belong to a subnet -specified by a record key or exactly match an IP address - - -type=prefix - -variable lookup is performed using prefix match -of a record key and a search key (1.17.5); -to match a record key, the record key must be a prefix of the search key - - - - - - -The optional sync parameter (1.15.0) enables -synchronization -of the shared memory zone. -The synchronization requires the -timeout parameter to be set. - -If the synchronization is enabled, removal of key-value pairs (no matter -one -or -all) -will be performed only on a target cluster node. -The same key-value pairs on other cluster nodes -will be removed upon timeout. - - - - - -
- -
diff --git a/xml/en/docs/stream/ngx_stream_limit_conn_module.xml b/xml/en/docs/stream/ngx_stream_limit_conn_module.xml --- a/xml/en/docs/stream/ngx_stream_limit_conn_module.xml +++ b/xml/en/docs/stream/ngx_stream_limit_conn_module.xml @@ -10,7 +10,7 @@ + rev="8">
@@ -148,19 +148,6 @@ or about 16 thousand 64-byte states. If the zone storage is exhausted, the server will close the connection. - - -Additionally, as part of our -commercial subscription, -the -status information -for each such shared memory zone can be -obtained or -reset -with the API since 1.17.7. - - -
diff --git a/xml/en/docs/stream/ngx_stream_mqtt_filter_module.xml b/xml/en/docs/stream/ngx_stream_mqtt_filter_module.xml deleted file mode 100644 --- a/xml/en/docs/stream/ngx_stream_mqtt_filter_module.xml +++ /dev/null @@ -1,134 +0,0 @@ - - - - - - - - -
- - -The ngx_stream_mqtt_filter_module module (1.23.4) provides -support for Message Queuing Telemetry Transport protocol (MQTT) versions -3.1.1 -and -5.0. - - - - -This module is available as part of our -commercial subscription. - - - -
- - -
- - - -listen 127.0.0.1:18883; -proxy_pass backend; -proxy_buffer_size 16k; - -mqtt on; -mqtt_set_connect clientid "$client"; -mqtt_set_connect username "$name"; - - - -
- - -
- - -on | off -off -stream -server - - -Enables the MQTT protocol for the given virtual server. - - - - - - -number size -100 1k -stream -server -1.25.1 - - -Sets the number and size of the buffers -used for handling MQTT messages, -for a single connection. - - - - - - -size -4k|8k -server - - - -This directive is obsolete since version 1.25.1. -The -directive should be used instead. - - - - -Sets the size of the buffer -used for writing a modified message. -By default, the buffer size is equal to one memory page. -This is either 4K or 8K, depending on a platform. -It can be made smaller, however. - - - - - - -field value - -server - - -Sets the message field -to the given value for CONNECT message. -The following fields are supported: -clientid, -username, and -password. -The value can contain text, variables, and their combination. - - - -Several mqtt_set_connect directives -can be specified on the same level: - -mqtt_set_connect clientid "$client"; -mqtt_set_connect username "$name"; - - - - - -
- -
diff --git a/xml/en/docs/stream/ngx_stream_mqtt_preread_module.xml b/xml/en/docs/stream/ngx_stream_mqtt_preread_module.xml deleted file mode 100644 --- a/xml/en/docs/stream/ngx_stream_mqtt_preread_module.xml +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - - -
- - -The ngx_stream_mqtt_preread_module module (1.23.4) allows -extracting information from the CONNECT message -of the Message Queuing Telemetry Transport protocol (MQTT) versions -3.1.1 -and -5.0, -for example, a username or a client ID. - - - - -This module is available as part of our -commercial subscription. - - - -
- - -
- - - -mqtt_preread on; -return $mqtt_preread_clientid; - - - -
- - -
- - -on | off -off -stream -server - - -Enables extracting information from the MQTT CONNECT message at -the preread phase. - - - - -
- - -
- - - - -$mqtt_preread_clientid - -the clientid value from the CONNECT message - - -$mqtt_preread_username - -the username value from the CONNECT message - - - - - -
- -
diff --git a/xml/en/docs/stream/ngx_stream_proxy_module.xml b/xml/en/docs/stream/ngx_stream_proxy_module.xml --- a/xml/en/docs/stream/ngx_stream_proxy_module.xml +++ b/xml/en/docs/stream/ngx_stream_proxy_module.xml @@ -9,7 +9,7 @@ + rev="33">
@@ -327,40 +327,6 @@ session is still not finished, the respo - -on | off -off -stream -server -1.15.8 - - -Enables terminating all sessions to a proxied server -after it was removed from the group or marked as permanently unavailable. -This can occur because of -re-resolve -or with the API -DELETE -command. -A server can be marked as permanently unavailable if it is considered -unhealthy -or with the API -PATCH -command. -Each session is terminated when the next -read or write event is processed for the client or proxied server. - - - - -This directive is available as part of our -commercial subscription. - - - - - - on | off off diff --git a/xml/en/docs/stream/ngx_stream_proxy_protocol_vendor_module.xml b/xml/en/docs/stream/ngx_stream_proxy_protocol_vendor_module.xml deleted file mode 100644 --- a/xml/en/docs/stream/ngx_stream_proxy_protocol_vendor_module.xml +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - - - -
- - -The ngx_stream_proxy_protocol_vendor_module module (1.23.3) -allows obtaining additional information about a connection in -cloud platforms from application-specific TLVs of the -PROXY -protocol -header. - - - -Supported cloud platforms: - - - -Amazon Web Services - - - -Google Cloud Platform - - - -Microsoft Azure - - - - - - -The PROXY protocol must be previously enabled by setting the -proxy_protocol parameter -in the directive. - - - - -This module is available as part of our -commercial subscription. - - - -
- - -
- - - -server { - listen 12345 proxy_protocol; - return $proxy_protocol_tlv_gcp_conn_id; -} - - - -
- - -
- - - - -$proxy_protocol_tlv_aws_vpce_id - -TLV value from the PROXY Protocol header representing the -ID -of AWS VPC endpoint - - -$proxy_protocol_tlv_azure_pel_id - -TLV value from the PROXY Protocol header representing the -LinkID -of Azure private endpoint - - -$proxy_protocol_tlv_gcp_conn_id - -TLV value from the PROXY Protocol header representing -Google Cloud PSC -connection ID - - - - - -
- -
diff --git a/xml/en/docs/stream/ngx_stream_upstream_hc_module.xml b/xml/en/docs/stream/ngx_stream_upstream_hc_module.xml deleted file mode 100644 --- a/xml/en/docs/stream/ngx_stream_upstream_hc_module.xml +++ /dev/null @@ -1,330 +0,0 @@ - - - - - - - - -
- - -The ngx_stream_upstream_hc_module module (1.9.0) -allows enabling periodic health checks of the servers in a -group. -The server group must reside in the -shared memory. - - - -If a health check fails, the server will be considered unhealthy. -If several health checks are defined for the same group of servers, -a single failure of any check will make the corresponding server be -considered unhealthy. -Client connections are not passed to unhealthy servers -and servers in the “checking” state. - - - - -This module is available as part of our -commercial subscription. - - - -
- - -
- - - -upstream tcp { - zone upstream_tcp 64k; - - server backend1.example.com:12345 weight=5; - server backend2.example.com:12345 fail_timeout=5s slow_start=30s; - server 192.0.2.1:12345 max_fails=3; - - server backup1.example.com:12345 backup; - server backup2.example.com:12345 backup; -} - -server { - listen 12346; - proxy_pass tcp; - health_check; -} - -With this configuration, nginx -will check the ability to establish a TCP connection to each server -in the tcp group every five seconds. -When a connection to the server cannot be established, -the health check will fail, and the server will -be considered unhealthy. - - - -Health checks can be configured for the UDP protocol: - -upstream dns_upstream { - - zone dns_zone 64k; - - server dns1.example.com:53; - server dns2.example.com:53; - server dns3.example.com:53; -} - -server { - listen 53 udp; - proxy_pass dns_upstream; - health_check udp; -} - -In this case, the absence of -ICMP “Destination Unreachable” message is expected -in reply to the sent string “nginx health check”. - - - -Health checks can also be configured to test data obtained from the server. -Tests are configured separately using the directive -and referenced in the match parameter -of the directive. - - -
- - -
- - -[parameters] - -server - - -Enables periodic health checks of the servers in a -group. - - - -The following optional parameters are supported: - - - -interval=time - - -sets the interval between two consecutive health checks, -by default, 5 seconds. - - - -jitter=time - - -sets the time within which -each health check will be randomly delayed, -by default, there is no delay. - - - -fails=number - - -sets the number of consecutive failed health checks of a particular server -after which this server will be considered unhealthy, -by default, 1. - - - -passes=number - - -sets the number of consecutive passed health checks of a particular server -after which the server will be considered healthy, -by default, 1. - - - -mandatory [persistent] - - - -sets the initial “checking” state for a server -until the first health check is completed (1.11.7). -Client connections are not passed to servers in the “checking” state. -If the parameter is not specified, -the server will be initially considered healthy. - - - -The persistent parameter (1.21.1) -sets the initial “up” state for a server after reload -if the server was considered healthy before reload. - - - - - -match=name - - -specifies the match block configuring the tests that a -successful connection should pass in order for a health check to pass. -By default, for TCP, only the ability -to establish a TCP connection with the server is checked. -For UDP, the absence of -ICMP “Destination Unreachable” message is expected -in reply to the sent string “nginx health check”. - -Prior to version 1.11.7, by default, UDP health check -required a match block with the -send and expect -parameters. - - - - -port=number - - -defines the port used when connecting to a server -to perform a health check (1.9.7). -By default, equals the - port. - - - -udp - - -specifies that the UDP protocol should be used for -health checks instead of the default TCP protocol (1.9.13). - - - - - - - - - -timeout -5s -stream -server - - -Overrides the - -value for health checks. - - - - - - -name - -stream - - -Defines the named test set used to verify server responses to health checks. - - - -The following parameters can be configured: - - - -send string; - - -sends a string to the server; - - - -expect string | -~ regex; - - -a literal string (1.9.12) or a regular expression -that the data obtained from the server should match. -The regular expression is specified with the preceding -“~*” modifier (for case-insensitive matching), or the -“~” modifier (for case-sensitive matching). - - - -Both send and expect parameters -can contain hexadecimal literals with the prefix “\x” -followed by two hex digits, for example, “\x80” (1.9.12). - - - -Health check is passed if: - - -the TCP connection was successfully established; - - - -the string from the send parameter, -if specified, was sent; - - - -the data obtained from the server matched the string or regular expression -from the expect parameter, if specified; - - - -the time elapsed does not exceed the value specified -in the directive. - - - - - - -Example: - -upstream backend { - zone upstream_backend 10m; - server 127.0.0.1:12345; -} - -match http { - send "GET / HTTP/1.0\r\nHost: localhost\r\n\r\n"; - expect ~ "200 OK"; -} - -server { - listen 12346; - proxy_pass backend; - health_check match=http; -} - - - - - -Only the first - -bytes of data obtained from the server are examined. - - - - - -
- -
diff --git a/xml/en/docs/stream/ngx_stream_upstream_module.xml b/xml/en/docs/stream/ngx_stream_upstream_module.xml --- a/xml/en/docs/stream/ngx_stream_upstream_module.xml +++ b/xml/en/docs/stream/ngx_stream_upstream_module.xml @@ -9,7 +9,7 @@ + rev="40">
@@ -45,35 +45,6 @@ server { - -Dynamically configurable group with -periodic health checks is -available as part of our -commercial subscription: - -resolver 10.0.0.1; - -upstream dynamic { - zone upstream_dynamic 64k; - - server backend1.example.com:12345 weight=5; - server backend2.example.com:12345 fail_timeout=5s slow_start=30s; - server 192.0.2.1:12345 max_fails=3; - server backend3.example.com:12345 resolve; - server backend4.example.com service=http resolve; - - server backup1.example.com:12345 backup; - server backup2.example.com:12345 backup; -} - -server { - listen 12346; - proxy_pass dynamic; - health_check; -} - - -
@@ -155,10 +126,6 @@ connections to the proxied server (1.11. Default value is zero, meaning there is no limit. If the server group does not reside in the shared memory, the limitation works per each worker process. - -Prior to version 1.11.5, this parameter was available as part of our -commercial subscription. - @@ -219,95 +186,9 @@ marks the server as permanently unavaila -Additionally, -the following parameters are available as part of our -commercial subscription: - - - -resolve - - -monitors changes of the IP addresses -that correspond to a domain name of the server, -and automatically modifies the upstream configuration -without the need of restarting nginx. -The server group must reside in the shared memory. - -In order for this parameter to work, -the resolver directive -must be specified in the -stream block -or in the corresponding upstream block. - - - - -service=name - - -enables resolving of DNS -SRV -records and sets the service name (1.9.13). -In order for this parameter to work, it is necessary to specify -the parameter for the server -and specify a hostname without a port number. - -If the service name does not contain a dot (“.”), then -the RFC-compliant name -is constructed -and the TCP protocol is added to the service prefix. -For example, to look up the -_http._tcp.backend.example.com SRV record, -it is necessary to specify the directive: - -server backend.example.com service=http resolve; - -If the service name contains one or more dots, then the name is constructed -by joining the service prefix and the server name. -For example, to look up the _http._tcp.backend.example.com -and server1.backend.example.com SRV records, -it is necessary to specify the directives: - -server backend.example.com service=_http._tcp resolve; -server example.com service=server1.backend resolve; - - - - -Highest-priority SRV records -(records with the same lowest-number priority value) -are resolved as primary servers, -the rest of SRV records are resolved as backup servers. -If the parameter is specified for the server, -high-priority SRV records are resolved as backup servers, -the rest of SRV records are ignored. - - - - -slow_start=time - - -sets the time during which the server will recover its weight -from zero to a nominal value, when unhealthy server becomes -healthy, -or when the server becomes available after a period of time -it was considered unavailable. -Default value is zero, i.e. slow start is disabled. -The parameter cannot be used along with the - and load balancing methods. - - - - - - - - -If there is only a single server in a group, max_fails, -fail_timeout and slow_start parameters +If there is only a single server in a group, +max_fails and fail_timeout parameters are ignored, and such a server will never be considered unavailable. @@ -328,70 +209,6 @@ Several groups may share the same zone. In this case, it is enough to specify the size only once. - -Additionally, -as part of our commercial subscription, -such groups allow changing the group membership -or modifying the settings of a particular server -without the need of restarting nginx. -The configuration is accessible via the -API module (1.13.3). - -Prior to version 1.13.3, -the configuration was accessible only via a special location -handled by -. - - - -
- - - -file - -upstream -1.9.7 - - -Specifies a file that keeps the state -of the dynamically configurable group. - - - -Examples: - -state /var/lib/nginx/state/servers.conf; # path for Linux -state /var/db/nginx/state/servers.conf; # path for FreeBSD - - - - -The state is currently limited to the list of servers with their parameters. -The file is read when parsing the configuration and is updated each time -the upstream configuration is -changed. -Changing the file content directly should be avoided. -The directive cannot be used -along with the directive. - - - - -Changes made during -configuration reload -or binary upgrade -can be lost. - - - - - -This directive is available as part of our -commercial subscription. - - - @@ -448,52 +265,6 @@ weighted round-robin balancing method. - - - connect | - first_byte | - last_byte - [inflight] - -upstream - - -Specifies that a group should use a load balancing method where a connection -is passed to the server with the least average time and -least number of active connections, taking into account weights of servers. -If there are several such servers, they are tried in turn using a -weighted round-robin balancing method. - - - -If the connect parameter is specified, -time to -connect -to the upstream server is used. -If the first_byte parameter is specified, -time to receive the -first byte of data is used. -If the last_byte is specified, -time to receive the -last byte of data is used. -If the inflight parameter is specified (1.11.6), -incomplete connections are also taken into account. - -Prior to version 1.11.6, -incomplete connections were taken into account by default. - - - - - -This directive is available as part of our -commercial subscription. - - - - - - [two [method]] @@ -517,108 +288,6 @@ which passes a connection to a server with the least number of active connections. - -The least_time method passes a connection to a server -with the least average time and least number of active connections. -If least_time=connect parameter is specified, -time to -connect -to the upstream server is used. -If least_time=first_byte parameter is specified, -time to receive the -first byte of data is used. -If least_time=last_byte is specified, -time to receive the -last byte of data is used. - -The least_time method is available as a part of our -commercial subscription. - - - - - - - - - address ... - [valid=time] - [ipv4=on|off] - [ipv6=on|off] - [status_zone=zone] - -upstream -1.17.5 - - -Configures name servers used to resolve names of upstream servers -into addresses, for example: - -resolver 127.0.0.1 [::1]:5353; - -The address can be specified as a domain name or IP address, -with an optional port. -If port is not specified, the port 53 is used. -Name servers are queried in a round-robin fashion. - - - -By default, nginx will look up both IPv4 and IPv6 addresses while resolving. -If looking up of IPv4 or IPv6 addresses is not desired, -the ipv4=off (1.23.1) or -the ipv6=off parameter can be specified. - - - -By default, nginx caches answers using the TTL value of a response. -The optional valid parameter allows overriding it: - -resolver 127.0.0.1 [::1]:5353 valid=30s; - - -To prevent DNS spoofing, it is recommended -configuring DNS servers in a properly secured trusted local network. - - - - -The optional status_zone parameter -enables -collection -of DNS server statistics of requests and responses -in the specified zone. - - - - -This directive is available as part of our -commercial subscription. - - - - - - - -time -30s -upstream -1.17.5 - - -Sets a timeout for name resolution, for example: - -resolver_timeout 5s; - - - - - -This directive is available as part of our -commercial subscription. - - -
diff --git a/xml/en/docs/stream/ngx_stream_zone_sync_module.xml b/xml/en/docs/stream/ngx_stream_zone_sync_module.xml deleted file mode 100644 --- a/xml/en/docs/stream/ngx_stream_zone_sync_module.xml +++ /dev/null @@ -1,548 +0,0 @@ - - - - - - - - -
- - -The ngx_stream_zone_sync_module module (1.13.8) -provides the necessary support for synchronizing contents of -shared memory zones -between nodes of a cluster. -To enable synchronization for a particular zone, a corresponding module -must support this feature. -Currently, it is possible to synchronize HTTP -sticky -sessions, information about -excessive HTTP requests, -and key-value pairs both in -http -and stream. - - - - -This module is available as part of our -commercial subscription. - - - -
- - -
- - -Minimal configuration: - -http { - ... - - upstream backend { - server backend1.example.com:8080; - server backend2.example.com:8081; - - sticky learn - create=$upstream_cookie_examplecookie - lookup=$cookie_examplecookie - zone=client_sessions:1m sync; - } - - ... -} - -stream { - ... - - - server { - zone_sync; - - listen 127.0.0.1:12345; - - # cluster of 2 nodes - zone_sync_server a.example.com:12345; - zone_sync_server b.example.com:12345; - - } - -A more complex configuration with SSL enabled -and with cluster members defined by DNS: - -... - -stream { - ... - - resolver 127.0.0.1 valid=10s; - - server { - zone_sync; - - # the name resolves to multiple addresses that correspond to cluster nodes - zone_sync_server cluster.example.com:12345 resolve; - - listen 127.0.0.1:4433 ssl; - - ssl_certificate localhost.crt; - ssl_certificate_key localhost.key; - - zone_sync_ssl on; - - zone_sync_ssl_certificate localhost.crt; - zone_sync_ssl_certificate_key localhost.key; - } -} - - - -
- - -
- - - - -server - - -Enables the synchronization of shared memory zones between cluster nodes. -Cluster nodes are defined using directives. - - - - - - -number size -8 4k|8k -stream -server - - -Sets the number and size of the -per-zone buffers used for pushing zone contents. -By default, the buffer size is equal to one memory page. -This is either 4K or 8K, depending on a platform. - - - - -A single buffer must be large enough to hold any entry of each zone being -synchronized. - - - - - - - -time -1s -stream -server - - -Defines an interval between connection attempts to another cluster node. - - - - - - -time -5s -stream -server - - -Defines a timeout for establishing a connection with another cluster node. - - - - - - -time -1s -stream -server - - -Defines an interval for polling updates in a shared memory zone. - - - - - - -size -4k|8k -stream -server - - -Sets size of a per-connection receive buffer used to parse -incoming stream of synchronization messages. -The buffer size must be equal or greater than one of the -. -By default, the buffer size is equal to -zone_sync_buffers size -multiplied by number. - - - - - - -address [resolve] - -server - - -Defines the address of a cluster node. -The address can be specified as a domain name or IP address -with a mandatory port, or as a UNIX-domain socket path -specified after the “unix:” prefix. -A domain name that resolves to several IP addresses defines -multiple nodes at once. - - - -The resolve parameter instructs nginx to monitor -changes of the IP addresses that correspond to a domain name of the node -and automatically modify the configuration -without the need of restarting nginx. - - - -Cluster nodes are specified either dynamically as a single -zone_sync_server directive with -the resolve parameter, or statically as a series of several -directives without the parameter. - -Each cluster node should be specified only once. - - -All cluster nodes should use the same configuration. - - - - -In order for the resolve parameter to work, -the directive -must be specified in the - block. -Example: - -stream { - resolver 10.0.0.1; - - server { - zone_sync; - zone_sync_server cluster.example.com:12345 resolve; - ... - } -} - - - - - - - -on | off -off -stream -server - - -Enables the SSL/TLS protocol for connections to another cluster server. - - - - - - -file - -stream -server - - -Specifies a file with the certificate in the PEM format -used for authentication to another cluster server. - - - - - - -file - -stream -server - - -Specifies a file with the secret key in the PEM format -used for authentication to another cluster server. - - - - - - -ciphers -DEFAULT -stream -server - - -Specifies the enabled ciphers for connections to another cluster server. -The ciphers are specified in the format understood by the OpenSSL library. - - - -The full list can be viewed using the -“openssl ciphers” command. - - - - - - -name value - -stream -server -1.19.4 - - -Sets arbitrary OpenSSL configuration -commands -when establishing a connection with another cluster server. - -The directive is supported when using OpenSSL 1.0.2 or higher. - - - - -Several zone_sync_ssl_conf_command directives -can be specified on the same level. -These directives are inherited from the previous configuration level -if and only if there are -no zone_sync_ssl_conf_command directives -defined on the current level. - - - - -Note that configuring OpenSSL directly -might result in unexpected behavior. - - - - - - - -file - -stream -server - - -Specifies a file with revoked certificates (CRL) -in the PEM format used to verify -the certificate of another cluster server. - - - - - - -name -host from zone_sync_server -stream -server -1.15.7 - - -Allows overriding the server name used to -verify -the certificate of a cluster server and to be -passed through SNI -when establishing a connection with the cluster server. - - - -By default, the host part of the address is used, -or resolved IP address if the parameter is specified. - - - - - - -file - -stream -server - - -Specifies a file with passphrases for -secret keys -where each passphrase is specified on a separate line. -Passphrases are tried in turn when loading the key. - - - - - - - - [SSLv2] - [SSLv3] - [TLSv1] - [TLSv1.1] - [TLSv1.2] - [TLSv1.3] -TLSv1 TLSv1.1 TLSv1.2 -stream -server - - -Enables the specified protocols for connections to another cluster server. - - - - - - -on | off -off -stream -server -1.15.7 - - -Enables or disables passing of the server name through -TLS -Server Name Indication extension (SNI, RFC 6066) -when establishing a connection with another cluster server. - - - - - - -file - -stream -server - - -Specifies a file with trusted CA certificates in the PEM format -used to verify -the certificate of another cluster server. - - - - - - -on | off -off -stream -server - - -Enables or disables verification of another cluster server certificate. - - - - - - -number -1 -stream -server - - -Sets the verification depth in another cluster server certificates chain. - - - - - - -timeout -5s -stream -server - - -Sets the timeout between two successive -read or write operations on connection to another cluster node. -If no data is transmitted within this time, the connection is closed. - - - - -
- - -
- -The synchronization status of a node is available via the -/stream/zone_sync/ -endpoint of the API which returns the -following -metrics. - - -
- - -
- -To start a new node, update a DNS record of a cluster hostname -with the IP address of the new node and start an instance. -The new node will discover other nodes from DNS or static configuration -and will start sending updates to them. -Other nodes will eventually discover the new node using DNS and -start pushing updates to it. -In case of static configuration, -other nodes need to be reloaded in order to send updates to the new node. - - - -To stop a node, send the QUIT signal to the instance. -The node will finish zone synchronization -and gracefully close open connections. - - - -To remove a node, update a DNS record of a cluster hostname -and remove the IP address of the node. -All other nodes will eventually discover that the node is removed, -close connections to the node, and will no longer try to connect to it. -After the node is removed, it can be stopped as described above. -In case of static configuration, other nodes need to be reloaded -in order to stop sending updates to the removed node. - - -
- -
diff --git a/xml/en/docs/syslog.xml b/xml/en/docs/syslog.xml --- a/xml/en/docs/syslog.xml +++ b/xml/en/docs/syslog.xml @@ -96,9 +96,6 @@ access_log syslog:server=[2001:db8::1]:1 Logging to syslog is available since version 1.7.1. -As part of our -commercial subscription -logging to syslog is available since version 1.5.3. diff --git a/xml/en/donation.xml b/xml/en/donation.xml --- a/xml/en/donation.xml +++ b/xml/en/donation.xml @@ -8,22 +8,12 @@
+ rev="2">
Thank you very much for all your support of the nginx project. -We as a company have created a commercial model to help support -the ongoing development of the software, so we no longer need to -ask for charitable donations to support our work. -If you use and enjoy nginx, and want to support the project please -consider purchasing one of our paid products and services. -You can learn more at nginx.com. - - - -Thank you!
diff --git a/xml/en/support.xml b/xml/en/support.xml --- a/xml/en/support.xml +++ b/xml/en/support.xml @@ -8,18 +8,7 @@
- - -
- - -We offer -commercial support -for nginx and our commercial products. - - -
+ rev="11">
diff --git a/xml/it/docs/index.xml b/xml/it/docs/index.xml --- a/xml/it/docs/index.xml +++ b/xml/it/docs/index.xml @@ -198,11 +198,6 @@ ngx_http_empty_gif_module - -ngx_http_f4f_module - - - ngx_http_fastcgi_module @@ -243,11 +238,6 @@ ngx_http_headers_module - -ngx_http_hls_module - - - ngx_http_image_filter_module @@ -323,11 +313,6 @@ ngx_http_secure_link_module - -ngx_http_session_log_module - - - ngx_http_spdy_module @@ -348,11 +333,6 @@ ngx_http_ssl_module - -ngx_http_status_module - - - ngx_http_sub_module diff --git a/xml/it/support.xml b/xml/it/support.xml --- a/xml/it/support.xml +++ b/xml/it/support.xml @@ -9,33 +9,7 @@ link="/it/support.html" lang="it" translator="Angelo Papadia" - rev="4"> - - -
- - -E' possibile ottenere supporto commerciale per nginx; -per maggiori informazioni consultare la pagina relativa a -nginx.com. - - -
- - -
- - - - - -wiki.nginx.org - - - - - -
+ rev="11">
@@ -78,30 +52,6 @@ archivio Gmane
-
- - - - - -forum.nginx.org -(integrato da mailing list) - - - - -Forum Ruby -(integrato da mailing list -nginx@nginx.org -) - - - - - -
- -
diff --git a/xml/ru/GNUmakefile b/xml/ru/GNUmakefile --- a/xml/ru/GNUmakefile +++ b/xml/ru/GNUmakefile @@ -29,7 +29,6 @@ REFS = \ http/ngx_http_access_module \ http/ngx_http_addition_module \ http/ngx_http_auth_basic_module \ - http/ngx_http_auth_jwt_module \ http/ngx_http_auth_request_module \ http/ngx_http_autoindex_module \ http/ngx_http_browser_module \ @@ -38,7 +37,6 @@ REFS = \ http/ngx_http_dav_module \ http/ngx_http_empty_gif_module \ http/ngx_http_fastcgi_module \ - http/ngx_http_f4f_module \ http/ngx_http_flv_module \ http/ngx_http_geo_module \ http/ngx_http_geoip_module \ @@ -47,10 +45,8 @@ REFS = \ http/ngx_http_gzip_module \ http/ngx_http_gzip_static_module \ http/ngx_http_headers_module \ - http/ngx_http_hls_module \ http/ngx_http_image_filter_module \ http/ngx_http_index_module \ - http/ngx_http_internal_redirect_module \ http/ngx_http_js_module \ http/ngx_http_limit_conn_module \ http/ngx_http_limit_req_module \ @@ -62,7 +58,6 @@ REFS = \ http/ngx_http_mp4_module \ http/ngx_http_perl_module \ http/ngx_http_proxy_module \ - http/ngx_http_proxy_protocol_vendor_module \ http/ngx_http_random_index_module \ http/ngx_http_realip_module \ http/ngx_http_referer_module \ @@ -74,12 +69,9 @@ REFS = \ http/ngx_http_split_clients_module \ http/ngx_http_ssi_module \ http/ngx_http_ssl_module \ - http/ngx_http_status_module \ http/ngx_http_stub_status_module \ http/ngx_http_sub_module \ http/ngx_http_upstream_module \ - http/ngx_http_upstream_conf_module \ - http/ngx_http_upstream_hc_module \ http/ngx_http_userid_module \ http/ngx_http_uwsgi_module \ http/ngx_http_v2_module \ @@ -101,10 +93,7 @@ REFS = \ stream/ngx_stream_limit_conn_module \ stream/ngx_stream_log_module \ stream/ngx_stream_map_module \ - stream/ngx_stream_mqtt_filter_module \ - stream/ngx_stream_mqtt_preread_module \ stream/ngx_stream_proxy_module \ - stream/ngx_stream_proxy_protocol_vendor_module \ stream/ngx_stream_realip_module \ stream/ngx_stream_return_module \ stream/ngx_stream_set_module \ @@ -112,7 +101,6 @@ REFS = \ stream/ngx_stream_ssl_module \ stream/ngx_stream_ssl_preread_module \ stream/ngx_stream_upstream_module \ - stream/ngx_stream_upstream_hc_module \ stream/stream_processing \ ngx_google_perftools_module \ njs/index \ diff --git a/xml/ru/docs/http/ngx_http_access_module.xml b/xml/ru/docs/http/ngx_http_access_module.xml --- a/xml/ru/docs/http/ngx_http_access_module.xml +++ b/xml/ru/docs/http/ngx_http_access_module.xml @@ -10,7 +10,7 @@ + rev="5">
@@ -21,9 +21,8 @@ Ограничить доступ можно также по -паролю, по -результату подзапроса -или по JWT. +паролю или по +результату подзапроса. Одновременное ограничение доступа по адресу и паролю управляется директивой . diff --git a/xml/ru/docs/http/ngx_http_auth_basic_module.xml b/xml/ru/docs/http/ngx_http_auth_basic_module.xml --- a/xml/ru/docs/http/ngx_http_auth_basic_module.xml +++ b/xml/ru/docs/http/ngx_http_auth_basic_module.xml @@ -10,7 +10,7 @@ + rev="11">
@@ -22,9 +22,8 @@ Ограничить доступ можно также по -адресу, по -результату подзапроса -или по JWT. +адресу или по +результату подзапроса. Одновременное ограничение доступа по адресу и паролю управляется директивой . diff --git a/xml/ru/docs/http/ngx_http_auth_jwt_module.xml b/xml/ru/docs/http/ngx_http_auth_jwt_module.xml deleted file mode 100644 --- a/xml/ru/docs/http/ngx_http_auth_jwt_module.xml +++ /dev/null @@ -1,459 +0,0 @@ - - - - - - - - -
- - -Модуль ngx_http_auth_jwt_module (1.11.3) -предоставляет возможность авторизации клиента с проверкой предоставляемого -JSON Web Token (JWT) -при помощи указанных ключей. -Модуль поддерживает -JSON Web Signature (JWS), -JSON Web Encryption (JWE) -(1.19.7) и Nested JWT (1.21.0). -Модуль может использоваться для настройки аутентификации -OpenID Connect. - - - -Модуль может быть скомбинирован с -другими модулями доступа, такими как -ngx_http_access_module, -ngx_http_auth_basic_module -и -ngx_http_auth_request_module -с помощью директивы . - - - - -Модуль доступен как часть -коммерческой подписки. - - - -
- - -
- - -Модуль поддерживает следующие криптографические -алгоритмы. - - - -Алгоритмы JWS: - - - -HS256, HS384, HS512 - - - -RS256, RS384, RS512 - - - -ES256, ES384, ES512 - - - -EdDSA (подписи Ed25519 и Ed448) (1.15.7) - - - - - -До версии 1.13.7 -поддерживались только алгоритмы HS256, RS256 и ES256. - - - - -Алгоритмы JWE для шифрования содержимого (1.19.7): - - - -A128CBC-HS256, A192CBC-HS384, A256CBC-HS512 - - - -A128GCM, A192GCM, A256GCM - - - - - - -Алгоритмы JWE для управления ключом (1.19.9): - - - -A128KW, A192KW, A256KW - - - -A128GCMKW, A192GCMKW, A256GCMKW - - - -dir—прямое использование симметричного ключа -в качестве ключа шифрования содержимого - - - -RSA-OAEP, RSA-OAEP-256, RSA-OAEP-384, RSA-OAEP-512 (1.21.0) - - - - - -
- - -
- - - -location / { - auth_jwt "closed site"; - auth_jwt_key_file conf/keys.json; -} - - - -
- - -
- - - - строка - [token=$переменная] | - off -off -http -server -location -limit_except - - -Включает проверку JSON Web Token. -Заданная строка используется в качестве realm. -В значении параметра допустимо использование переменных. - - - -Необязательный параметр token задаёт переменную, -содержащую JSON Web Token. -По умолчанию JWT передаётся в заголовке
Authorization
-в качестве -Bearer Token. -JWT может также передаваться как кука или часть строки запроса: - -auth_jwt "closed site" token=$cookie_auth_token; - -
- - -Специальное значение off отменяет действие -унаследованной с предыдущего уровня конфигурации -директивы auth_jwt. - - -
- - - -$переменная имя ... - -http -1.11.10 - - -Устанавливает переменную в параметр JWT claim, -определяемый именами ключей. -Сопоставление имён начинается с верхнего уровня дерева JSON. -Для массива переменная хранит список его элементов, разделяемых запятыми. - -auth_jwt_claim_set $email info e-mail; -auth_jwt_claim_set $job info "job title"; - - -До версии 1.13.7 можно было указать лишь одно имя, -результат для массивов был не определён. - - - - - -Значения переменных для tokens, зашифрованных при помощи JWE, -доступны только после дешифрования, которое происходит в -Access-фазе. - - - - - - - -$переменная имя ... - -http -1.11.10 - - -Устанавливает переменную в параметр заголовка JOSE, -определяемый именами ключей. -Сопоставление имён начинается с верхнего уровня дерева JSON. -Для массива переменная хранит список его элементов, разделяемых запятыми. - -До версии 1.13.7 можно было указать лишь одно имя, -результат для массивов был не определён. - - - - - - - время -0 -http -server -location -1.21.4 - - -Разрешает или запрещает кэширование ключей, -полученных из файла или из -подзапроса, -и задаёт время их кэширования. -Кэширование ключей, полученных из переменных, не поддерживается. -По умолчанию кэширование ключей выключено. - - - - - - -файл - -http -server -location -limit_except - - -Задаёт файл в формате -JSON Web Key Set -для проверки подписи JWT. -В значении параметра допустимо использование переменных. - - - -На одном уровне может быть указано -несколько директив auth_jwt_key_file (1.21.1): - -auth_jwt_key_file conf/keys.json; -auth_jwt_key_file conf/key.jwk; - -Если хотя бы один из указанных ключей не может быть загружен или обработан, -nginx вернёт ошибку -. - - - - - - -uri - -http -server -location -limit_except -1.15.6 - - -Позволяет получать файл в формате -JSON Web Key Set -из подзапроса для проверки подписи JWT и -задаёт URI, на который будет отправлен подзапрос. -В значении параметра допустимо использование переменных. -Для предотвращения дополнительных затрат на проверку -файл рекомендутеся кэшировать. - -proxy_cache_path /data/nginx/cache levels=1 keys_zone=foo:10m; - -server { - ... - - location / { - auth_jwt "closed site"; - auth_jwt_key_request /jwks_uri; - } - - location = /jwks_uri { - internal; - proxy_cache foo; - proxy_pass http://idp.example.com/keys; - } -} - -На одном уровне может быть указано -несколько директив auth_jwt_key_request (1.21.1): - -auth_jwt_key_request /jwks_uri; -auth_jwt_key_request /jwks2_uri; - -Если хотя бы один из указанных ключей не может быть загружен или обработан, -nginx вернёт ошибку -. - - - - - - -время -0s -http -server -location -1.13.10 - - -Задаёт максимально допустимое отклонение времени для компенсации -расхождения часов при проверке JWT claims -exp -и -nbf. - - - - - - -signed | - encrypted | - nested -signed -http -server -location -limit_except -1.19.7 - - -Задаёт ожидаемый тип JSON Web Token: -JWS (signed), -JWE (encrypted) -или подписанный и затем зашифрованный -Nested JWT (nested) (1.21.0). - - - - - - - - $значение ... - [error=401 | - 403] - - -http -server -location -limit_except -1.21.2 - - -Задаёт дополнительные условия для проверки JWT. -В качестве значения можно использовать текст, переменные и их комбинации, -значение должно начинаться c переменной (1.21.7). -Для успешной аутентификации необходимо, чтобы -значение всех строковых параметров было непустое или не равно “0”. - -map $jwt_claim_iss $valid_jwt_iss { - "good" 1; -} -... - -auth_jwt_require $valid_jwt_iss; - - - - -При невыполнении любого из условий -возвращается код ответа 401. -Необязательный параметр error (1.21.7) -позволяет переопределить код ответа на 403. - - - - -
- - -
- - -Модуль ngx_http_auth_jwt_module -поддерживает встроенные переменные: - - - - -$jwt_header_имя - -возвращает значение указанного -заголовка JOSE - - -$jwt_claim_имя - -возвращает значение указанной -JWT claim - - -Для вложенных claim, а также claim, содержащих точку (“.”), -значение переменной вычислить невозможно, -следует использовать директиву . - - - -Значения переменных для tokens, зашифрованных при помощи JWE, -доступны только после дешифрования, которое происходит в -Access-фазе. - - - -$jwt_payload - -возвращает расшифрованную полезную нагрузку (payload) верхнего уровня -для вложенных -или зашифрованных токенов (1.21.2). -Для вложенных токенов возвращает внутренний JWS токен. -Для зашифрованных токенов возвращает JSON с claims. - - - - - -
- -
diff --git a/xml/ru/docs/http/ngx_http_auth_request_module.xml b/xml/ru/docs/http/ngx_http_auth_request_module.xml --- a/xml/ru/docs/http/ngx_http_auth_request_module.xml +++ b/xml/ru/docs/http/ngx_http_auth_request_module.xml @@ -10,7 +10,7 @@ + rev="6">
@@ -36,10 +36,8 @@ Модуль может быть скомбинирован с другими модулями доступа, такими как -ngx_http_access_module, -ngx_http_auth_basic_module -и -ngx_http_auth_jwt_module, +ngx_http_access_module и +ngx_http_auth_basic_module, с помощью директивы . До версии 1.7.3 ответы на авторизационные подзапросы не могли быть закэшированы diff --git a/xml/ru/docs/http/ngx_http_core_module.xml b/xml/ru/docs/http/ngx_http_core_module.xml --- a/xml/ru/docs/http/ngx_http_core_module.xml +++ b/xml/ru/docs/http/ngx_http_core_module.xml @@ -10,7 +10,7 @@ + rev="107">
@@ -259,9 +259,8 @@ location /images/ { Задерживает обработку неавторизованных запросов с кодом ответа 401 для предотвращения атак по времени в случае ограничения доступа по -паролю, по -результату подзапроса -или по JWT. +паролю или по +результату подзапроса. @@ -848,7 +847,6 @@ error_page 404 =301 http://example.com/n запросы, перенаправленные директивами , , -, и ; @@ -1065,11 +1063,8 @@ keep-alive, эти буферы освобождаются. Если разрешён метод GET, то метод HEAD также будет разрешён. Доступ к остальным методам может быть ограничен при помощи директив модулей -ngx_http_access_module, -ngx_http_auth_basic_module -и -ngx_http_auth_jwt_module -(1.13.10): +ngx_http_access_module и +ngx_http_auth_basic_module: limit_except GET { allow 192.168.1.0/32; @@ -2182,8 +2177,7 @@ open_file_cache_events on; адрес ... [valid=время] [ipv4=on|off] - [ipv6=on|off] - [status_zone=зона] + [ipv6=on|off] http server @@ -2235,16 +2229,6 @@ resolver 127.0.0.1 [::1]:5353 valid=30s; - -Необязательный параметр status_zone (1.17.1) -включает -сбор информации -о запросах и ответах сервера DNS -в указанной зоне. -Параметр доступен как часть -коммерческой подписки. - - @@ -2311,10 +2295,9 @@ location /i/ { Разрешает доступ, если все (all) или хотя бы один (any) из модулей ngx_http_access_module, -ngx_http_auth_basic_module, +ngx_http_auth_basic_module +или ngx_http_auth_request_module -или -ngx_http_auth_jwt_module разрешают доступ. @@ -2666,8 +2649,7 @@ server { on | off | - build | - строка + build on http server @@ -2684,16 +2666,6 @@ server { имя сборки. - -Дополнительно, как часть -коммерческой подписки, -начиная с версии 1.9.13 -подписи на страницах ошибок и -значение поля
Server
заголовка ответа -можно задать явно с помощью строки с переменными. -Пустая строка запрещает выдачу поля
Server
. -
- diff --git a/xml/ru/docs/http/ngx_http_f4f_module.xml b/xml/ru/docs/http/ngx_http_f4f_module.xml deleted file mode 100644 --- a/xml/ru/docs/http/ngx_http_f4f_module.xml +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - - -
- - -Модуль ngx_http_f4f_module обеспечивает -серверную поддержку протокола Adobe HTTP Dynamic Streaming (HDS). - - - -Модуль предоставляет возможность обработки запросов HTTP Dynamic Streaming в -виде “/videoSeg1-Frag1”, т.е. извлечения необходимого фрагмента -из videoSeg1.f4f при помощи -индексного файла videoSeg1.f4x. -Модуль является альтернативой модулю Adobe f4f (HTTP Origin Module) -для Apache. - - - -Необходима предварительная обработка данных при помощи Adobe f4fpackager, -дополнительную информацию см. в соответствующей документации. - - - - -Модуль доступен как часть -коммерческой подписки. - - - -
- - -
- - - -location /video/ { - f4f; - ... -} - - - -
- - -
- - - - -location - - -Включает обработку данным модулем во вложенном location. - - - - - - -размер -512k -http -server -location - - -Задаёт размер буфера, в который будет -читаться индексный файл .f4x. - - - - -
- -
diff --git a/xml/ru/docs/http/ngx_http_fastcgi_module.xml b/xml/ru/docs/http/ngx_http_fastcgi_module.xml --- a/xml/ru/docs/http/ngx_http_fastcgi_module.xml +++ b/xml/ru/docs/http/ngx_http_fastcgi_module.xml @@ -10,7 +10,7 @@ + rev="54">
@@ -393,11 +393,7 @@ range-запрос будет передан на FastCGI-сервер [manager_threshold=время] [loader_files=число] [loader_sleep=время] - [loader_threshold=время] - [purger=on|off] - [purger_files=число] - [purger_sleep=время] - [purger_threshold=время] + [loader_threshold=время] http @@ -442,16 +438,6 @@ fastcgi_cache_path /data/nginx/cache lev разделяемой памяти, имя и размер которой задаются параметром keys_zone. Зоны размером в 1 мегабайт достаточно для хранения около 8 тысяч ключей. - -Как часть -коммерческой подписки -в зоне разделяемой памяти также хранится расширенная -информация о кэше, -поэтому для хранения аналогичного количества ключей необходимо указывать -больший размер зоны. -Например -зоны размером в 1 мегабайт достаточно для хранения около 4 тысяч ключей. - @@ -494,56 +480,6 @@ fastcgi_cache_path /data/nginx/cache lev -Кроме того, -следующие параметры доступны как часть -коммерческой подписки: - - - - - - -purger=on|off - - -Указывает, будут ли записи в кэше, соответствующие -маске, -удалены с диска при помощи процесса “cache purger” (1.7.12). -Установка параметра в значение on -(по умолчанию off) -активирует процесс “cache purger”, который -проходит по всем записям в кэше -и удаляет записи, соответствующие этой маске. - - - -purger_files=число - - -Задаёт число элементов, которые будут сканироваться за одну итерацию (1.7.12). -По умолчанию purger_files равен 10. - - - -purger_threshold=время - - -Задаёт продолжительность одной итерации (1.7.12). -По умолчанию purger_threshold равен 50 миллисекундам. - - - -purger_sleep=время - - -Задаёт паузу между итерациями (1.7.12). -По умолчанию purger_sleep равен 50 миллисекундам. - - - - - - В версиях 1.7.3, 1.7.7 и 1.11.10 формат заголовка кэша был изменён. При обновлении на более новую версию nginx @@ -554,64 +490,6 @@ fastcgi_cache_path /data/nginx/cache lev - -строка ... - -http -server -location -1.5.7 - - -Задаёт условия, при которых запрос будет считаться запросом -на очистку кэша. -Если значение хотя бы одного из строковых параметров непустое и не равно “0”, -то запись в кэше с соответствующим -ключом кэширования удаляется. -В результате успешной операции возвращается ответ с кодом -. - - - -Если ключ кэширования -запроса на очистку заканчивается -звёздочкой (“*”), то все записи в кэше, соответствующие -этой маске, будут удалены из кэша. -Тем не менее, эти записи будут оставаться на диске или до момента удаления -из-за отсутствия обращения к данным, -или до обработки их процессом “cache purger” (1.7.12), -или до попытки клиента получить к ним доступ. - - - -Пример конфигурации: - -fastcgi_cache_path /data/nginx/cache keys_zone=cache_zone:10m; - -map $request_method $purge_method { - PURGE 1; - default 0; -} - -server { - ... - location / { - fastcgi_pass http://backend; - fastcgi_cache cache_zone; - fastcgi_cache_key $uri; - fastcgi_cache_purge $purge_method; - } -} - - -Функциональность доступна как часть -коммерческой подписки. - - - - - - on | off off diff --git a/xml/ru/docs/http/ngx_http_hls_module.xml b/xml/ru/docs/http/ngx_http_hls_module.xml deleted file mode 100644 --- a/xml/ru/docs/http/ngx_http_hls_module.xml +++ /dev/null @@ -1,278 +0,0 @@ - - - - - - - - -
- - -Модуль ngx_http_hls_module обеспечивает серверную поддержку -протокола HTTP Live Streaming (HLS) для медиафайлов в формате MP4 и MOV. -Такие файлы обычно имеют расширения .mp4, .m4v, -.m4a, .mov или .qt. -Модуль поддерживает видеокодек H.264, а также аудиокодеки AAC и MP3. - - - -Для каждого медиафайла поддерживается два URI: - - - -URI плейлиста, имеющий расширение “.m3u8”. -URI может принимать необязательные аргументы: - - - -“start” и “end” -задают границы плейлиста в секундах (1.9.0). - - - -“offset” сдвигает первоначальную позицию воспроизведения -на указанное время в секундах (1.9.0). -Положительное значение задаёт временной сдвиг с начала плейлиста. -Отрицательное значение задаёт временной сдвиг с конца последнего фрагмента -в плейлисте. - - - -“len” задаёт длину фрагмента в секундах. - - - - - - -URI фрагмента, имеющий расширение “.ts”. -URI может принимать необязательные аргументы: - - - -“start” и “end” -задают границы фрагмента в секундах. - - - - - - - - - - -Модуль доступен как часть -коммерческой подписки. - - - -
- - -
- - - -location / { - hls; - hls_fragment 5s; - hls_buffers 10 10m; - hls_mp4_buffer_size 1m; - hls_mp4_max_buffer_size 5m; - root /var/video/; -} - -В такой конфигурации для файла “/var/video/test.mp4” -будут поддерживаться следующие URI: - -http://hls.example.com/test.mp4.m3u8?offset=1.000&start=1.000&end=2.200 -http://hls.example.com/test.mp4.m3u8?len=8.000 -http://hls.example.com/test.mp4.ts?start=1.000&end=2.200 - - - -
- - -
- - - - -location - - -Включает HLS-поток во вложенном location. - - - - - - -число размер -8 2m -http -server -location - - -Задаёт максимальное число и размер буферов, -которые используются для чтения и записи блоков данных. - - - - - - -on | off -off -http -server -location -1.5.12 - - -Добавляет аргументы из запроса плейлиста в URI фрагментов. -Это может быть необходимо для авторизации клиента -во время запроса фрагментов, а также для защиты HLS-потока с помощью -модуля -ngx_http_secure_link_module. - - - -Например, если клиент запрашивает плейлист -http://example.com/hls/test.mp4.m3u8?a=1&b=2, -то аргументы a=1 и b=2 -будут добавлены в URI фрагментов после аргументов -start и end: - -#EXTM3U -#EXT-X-VERSION:3 -#EXT-X-TARGETDURATION:15 -#EXT-X-PLAYLIST-TYPE:VOD - -#EXTINF:9.333, -test.mp4.ts?start=0.000&end=9.333&a=1&b=2 -#EXTINF:7.167, -test.mp4.ts?start=9.333&end=16.500&a=1&b=2 -#EXTINF:5.416, -test.mp4.ts?start=16.500&end=21.916&a=1&b=2 -#EXTINF:5.500, -test.mp4.ts?start=21.916&end=27.416&a=1&b=2 -#EXTINF:15.167, -test.mp4.ts?start=27.416&end=42.583&a=1&b=2 -#EXTINF:9.626, -test.mp4.ts?start=42.583&end=52.209&a=1&b=2 - -#EXT-X-ENDLIST - - - - -Если HLS-поток защищён с помощью модуля -ngx_http_secure_link_module, -переменную $uri не следует использовать в выражении -, -так как это приведёт к ошибкам при запросах к фрагментам. -Вместо $uri следует использовать -базовую часть URI -($hls_uri в примере): - -http { - ... - - map $uri $hls_uri { - ~^(?<base_uri>.*).m3u8$ $base_uri; - ~^(?<base_uri>.*).ts$ $base_uri; - default $uri; - } - - server { - ... - - location /hls/ { - hls; - hls_forward_args on; - - alias /var/videos/; - - secure_link $arg_md5,$arg_expires; - secure_link_md5 "$secure_link_expires$hls_uri$remote_addr secret"; - - if ($secure_link = "") { - return 403; - } - - if ($secure_link = "0") { - return 410; - } - } - } -} - - - - - - - -время -5s -http -server -location - - -Задаёт длину фрагмента по умолчанию для всех URI в плейлисте, -запрошенных без аргумента “len”. - - - - - - -размер -512k -http -server -location - - -Задаёт начальный размер буфера, используемого для -обработки MP4- и MOV-файлов. - - - - - - -размер -10m -http -server -location - - -В ходе обработки метаданных может понадобиться буфер большего размера. -Его размер не может превышать указанного, -иначе nginx вернёт серверную ошибку - -и запишет в лог следующее сообщение: - -"/some/movie/file.mp4" mp4 moov atom is too large: -12583268, you may want to increase hls_mp4_max_buffer_size - - - - - -
- -
diff --git a/xml/ru/docs/http/ngx_http_internal_redirect_module.xml b/xml/ru/docs/http/ngx_http_internal_redirect_module.xml deleted file mode 100644 --- a/xml/ru/docs/http/ngx_http_internal_redirect_module.xml +++ /dev/null @@ -1,99 +0,0 @@ - - - - - - - - -
- - -Модуль ngx_http_internal_redirect_module (1.23.4) позволяет -осуществлять внутреннее перенаправление. -В отличие от -изменения URI, -перенаправление происходит после проверок ограничений -скорости обработки запросов, -числа соединений -и доступа. - - - - -Модуль доступен как часть -коммерческой подписки - - - -
- - -
- - - -limit_req_zone $jwt_claim_sub zone=jwt_sub:10m rate=1r/s; - -server { - location / { - auth_jwt "realm"; - auth_jwt_key_file key.jwk; - - internal_redirect @rate_limited; - } - - location @rate_limited { - internal; - - limit_req zone=jwt_sub burst=10; - proxy_pass http://backend; - } -} - -В примере -скорость обработки запросов -ограничивается по -идентификатору -клиента. -Конфигурация без internal_redirect -может быть подвержена DoS-атакам при помощи неподписанных JWT, так как проверка -limit_req -выполняется -перед -проверкой -auth_jwt. -Использование internal_redirect -позволяет изменить порядок этих проверок. - - -
- - -
- - -uri - -server -location - - -Задаёт URI для внутреннего перенаправления запроса. -Вместо URI также можно использовать -именованный location. -В значении uri можно использовать переменные. -Если значение uri пустое, -то перенаправление не осуществляется. - - - - -
- -
diff --git a/xml/ru/docs/http/ngx_http_limit_conn_module.xml b/xml/ru/docs/http/ngx_http_limit_conn_module.xml --- a/xml/ru/docs/http/ngx_http_limit_conn_module.xml +++ b/xml/ru/docs/http/ngx_http_limit_conn_module.xml @@ -10,7 +10,7 @@ + rev="15">
@@ -198,19 +198,6 @@ limit_conn_zone $binary_remote_addr zone ошибку. - - -Дополнительно, как часть -коммерческой подписки, -информацию о состоянии -каждой такой зоны разделяемой памяти можно -получить или -сбросить -при помощи API -начиная с версии 1.17.7. - - - diff --git a/xml/ru/docs/http/ngx_http_limit_req_module.xml b/xml/ru/docs/http/ngx_http_limit_req_module.xml --- a/xml/ru/docs/http/ngx_http_limit_req_module.xml +++ b/xml/ru/docs/http/ngx_http_limit_req_module.xml @@ -10,7 +10,7 @@ + rev="17">
@@ -186,8 +186,7 @@ server { ключ zone=название:размер - rate=скорость - [sync] + rate=скорость http @@ -237,29 +236,6 @@ 64 байтам на 32-битных платформах и 128 байтам на 64-битных платформах. ползапроса в секунду — это 30r/m. - -Параметр sync (1.15.3) разрешает -синхронизацию -данной зоны разделяемой памяти. - -Параметр sync доступен как часть -коммерческой подписки. - - - - - -Дополнительно, как часть -коммерческой подписки, -информацию о состоянии -каждой такой зоны разделяемой памяти можно -получить или -сбросить -при помощи API -начиная с версии 1.17.7. - - -
diff --git a/xml/ru/docs/http/ngx_http_mp4_module.xml b/xml/ru/docs/http/ngx_http_mp4_module.xml --- a/xml/ru/docs/http/ngx_http_mp4_module.xml +++ b/xml/ru/docs/http/ngx_http_mp4_module.xml @@ -185,62 +185,6 @@ 12583268, you may want to increase mp4_m - - - on | - off | - множитель -off -http -server -location - - -Ограничивает скорость передачи ответа клиенту. -Ограничение основывается на значении усреднённого битрейта запрашиваемого -MP4-файла. -Скорость вычисляется умножением битрейта на задаваемый -множитель. -Специальное значение “on” соответствует множителю 1.1. -Специальное значение “off” отключает ограничение скорости. -Ограничение устанавливается на запрос, поэтому, если клиент одновременно -откроет два соединения, суммарная скорость будет вдвое выше -заданного ограничения. - - - - -Директива доступна как часть -коммерческой подписки. - - - - - - - -время -60s -http -server -location - - -Задаёт начальный объём медиаданных (измеряется как время воспроизведения), -после отправки которого начинает ограничиваться -скорость передачи ответа клиенту. - - - - -Директива доступна как часть -коммерческой подписки. - - - - - - on | off off diff --git a/xml/ru/docs/http/ngx_http_proxy_module.xml b/xml/ru/docs/http/ngx_http_proxy_module.xml --- a/xml/ru/docs/http/ngx_http_proxy_module.xml +++ b/xml/ru/docs/http/ngx_http_proxy_module.xml @@ -10,7 +10,7 @@ + rev="77">
@@ -410,11 +410,7 @@ range-запрос будет передан на проксируемый сервер [manager_threshold=время] [loader_files=число] [loader_sleep=время] - [loader_threshold=время] - [purger=on|off] - [purger_files=число] - [purger_sleep=время] - [purger_threshold=время] + [loader_threshold=время] http @@ -459,16 +455,6 @@ proxy_cache_path /data/nginx/cache level разделяемой памяти, имя и размер которой задаются параметром keys_zone. Зоны размером в 1 мегабайт достаточно для хранения около 8 тысяч ключей. - -Как часть -коммерческой подписки -в зоне разделяемой памяти также хранится расширенная -информация о кэше, -поэтому для хранения аналогичного количества ключей необходимо указывать -больший размер зоны. -Например -зоны размером в 1 мегабайт достаточно для хранения около 4 тысяч ключей. - @@ -511,56 +497,6 @@ proxy_cache_path /data/nginx/cache level -Кроме того, -следующие параметры доступны как часть -коммерческой подписки: - - - - - - -purger=on|off - - -Указывает, будут ли записи в кэше, соответствующие -маске, -удалены с диска при помощи процесса “cache purger” (1.7.12). -Установка параметра в значение on -(по умолчанию off) -активирует процесс “cache purger”, который -проходит по всем записям в кэше -и удаляет записи, соответствующие этой маске. - - - -purger_files=число - - -Задаёт число элементов, которые будут сканироваться за одну итерацию (1.7.12). -По умолчанию purger_files равен 10. - - - -purger_threshold=время - - -Задаёт продолжительность одной итерации (1.7.12). -По умолчанию purger_threshold равен 50 миллисекундам. - - - -purger_sleep=время - - -Задаёт паузу между итерациями (1.7.12). -По умолчанию purger_sleep равен 50 миллисекундам. - - - - - - В версиях 1.7.3, 1.7.7 и 1.11.10 формат заголовка кэша был изменён. При обновлении на более новую версию nginx @@ -571,64 +507,6 @@ proxy_cache_path /data/nginx/cache level - -строка ... - -http -server -location -1.5.7 - - -Задаёт условия, при которых запрос будет считаться запросом -на очистку кэша. -Если значение хотя бы одного из строковых параметров непустое и не равно “0”, -то запись в кэше с соответствующим -ключом кэширования удаляется. -В результате успешной операции возвращается ответ с кодом -. - - - -Если ключ кэширования -запроса на очистку заканчивается -звёздочкой (“*”), то все записи в кэше, соответствующие -этой маске, будут удалены из кэша. -Тем не менее, эти записи будут оставаться на диске или до момента удаления -из-за отсутствия обращения к данным, -или до обработки их процессом “cache purger” (1.7.12), -или до попытки клиента получить к ним доступ. - - - -Пример конфигурации: - -proxy_cache_path /data/nginx/cache keys_zone=cache_zone:10m; - -map $request_method $purge_method { - PURGE 1; - default 0; -} - -server { - ... - location / { - proxy_pass http://backend; - proxy_cache cache_zone; - proxy_cache_key $uri; - proxy_cache_purge $purge_method; - } -} - - -Функциональность доступна как часть -коммерческой подписки. - - - - - - on | off off diff --git a/xml/ru/docs/http/ngx_http_proxy_protocol_vendor_module.xml b/xml/ru/docs/http/ngx_http_proxy_protocol_vendor_module.xml deleted file mode 100644 --- a/xml/ru/docs/http/ngx_http_proxy_protocol_vendor_module.xml +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - - - -
- - -Модуль ngx_http_proxy_protocol_vendor_module (1.23.3) -позволяет получать дополнительную информацию о соединении из -облачных платформ при помощи TLV, полученных из -заголовка -протокола -PROXY. - - - -Поддерживаемые облачные платформы: - - - -Amazon Web Services - - - -Google Cloud Platform - - - -Microsoft Azure - - - - - - -Протокол PROXY должен быть предварительно включён при помощи установки -параметра proxy_protocol в директиве -. - - - - -Модуль доступен как часть -коммерческой подписки - - - -
- - -
- - - -proxy_set_header X-Conn-ID $proxy_protocol_tlv_gcp_conn_id; - -server { - listen 80 proxy_protocol; - listen 443 ssl proxy_protocol; - ... -} - - - -
- - -
- - - - -$proxy_protocol_tlv_aws_vpce_id - -значение TLV, полученное из заголовка протокола PROXY, содержащее -ID -конечной точки VPC AWS - - -$proxy_protocol_tlv_azure_pel_id - -значение TLV, полученное из заголовка протокола PROXY, содержащее -LinkID -частной конечной точки Azure - - -$proxy_protocol_tlv_gcp_conn_id - -значение TLV, полученное из заголовка протокола PROXY, содержащее -ID соединения -Google Cloud PSC - - - - - -
- -
diff --git a/xml/ru/docs/http/ngx_http_scgi_module.xml b/xml/ru/docs/http/ngx_http_scgi_module.xml --- a/xml/ru/docs/http/ngx_http_scgi_module.xml +++ b/xml/ru/docs/http/ngx_http_scgi_module.xml @@ -10,7 +10,7 @@ + rev="42">
@@ -384,11 +384,7 @@ range-запрос будет передан на SCGI-сервер [manager_threshold=время] [loader_files=число] [loader_sleep=время] - [loader_threshold=время] - [purger=on|off] - [purger_files=число] - [purger_sleep=время] - [purger_threshold=время] + [loader_threshold=время] http @@ -433,16 +429,6 @@ scgi_cache_path /data/nginx/cache levels разделяемой памяти, имя и размер которой задаются параметром keys_zone. Зоны размером в 1 мегабайт достаточно для хранения около 8 тысяч ключей. - -Как часть -коммерческой подписки -в зоне разделяемой памяти также хранится расширенная -информация о кэше, -поэтому для хранения аналогичного количества ключей необходимо указывать -больший размер зоны. -Например -зоны размером в 1 мегабайт достаточно для хранения около 4 тысяч ключей. - @@ -485,56 +471,6 @@ scgi_cache_path /data/nginx/cache levels -Кроме того, -следующие параметры доступны как часть -коммерческой подписки: - - - - - - -purger=on|off - - -Указывает, будут ли записи в кэше, соответствующие -маске, -удалены с диска при помощи процесса “cache purger” (1.7.12). -Установка параметра в значение on -(по умолчанию off) -активирует процесс “cache purger”, который -проходит по всем записям в кэше -и удаляет записи, соответствующие этой маске. - - - -purger_files=число - - -Задаёт число элементов, которые будут сканироваться за одну итерацию (1.7.12). -По умолчанию purger_files равен 10. - - - -purger_threshold=время - - -Задаёт продолжительность одной итерации (1.7.12). -По умолчанию purger_threshold равен 50 миллисекундам. - - - -purger_sleep=время - - -Задаёт паузу между итерациями (1.7.12). -По умолчанию purger_sleep равен 50 миллисекундам. - - - - - - В версиях 1.7.3, 1.7.7 и 1.11.10 формат заголовка кэша был изменён. При обновлении на более новую версию nginx @@ -545,64 +481,6 @@ scgi_cache_path /data/nginx/cache levels - -строка ... - -http -server -location -1.5.7 - - -Задаёт условия, при которых запрос будет считаться запросом -на очистку кэша. -Если значение хотя бы одного из строковых параметров непустое и не равно “0”, -то запись в кэше с соответствующим -ключом кэширования удаляется. -В результате успешной операции возвращается ответ с кодом -. - - - -Если ключ кэширования -запроса на очистку заканчивается -звёздочкой (“*”), то все записи в кэше, соответствующие -этой маске, будут удалены из кэша. -Тем не менее, эти записи будут оставаться на диске или до момента удаления -из-за отсутствия обращения к данным, -или до обработки их процессом “cache purger” (1.7.12), -или до попытки клиента получить к ним доступ. - - - -Пример конфигурации: - -scgi_cache_path /data/nginx/cache keys_zone=cache_zone:10m; - -map $request_method $purge_method { - PURGE 1; - default 0; -} - -server { - ... - location / { - scgi_pass http://backend; - scgi_cache cache_zone; - scgi_cache_key $uri; - scgi_cache_purge $purge_method; - } -} - - -Функциональность доступна как часть -коммерческой подписки. - - - - - - on | off off diff --git a/xml/ru/docs/http/ngx_http_status_module.xml b/xml/ru/docs/http/ngx_http_status_module.xml deleted file mode 100644 --- a/xml/ru/docs/http/ngx_http_status_module.xml +++ /dev/null @@ -1,1170 +0,0 @@ - - - - - - - - -
- - -Модуль ngx_http_status_module предоставляет -доступ к информации о состоянии сервера. - -Этот модуль был доступен как часть -коммерческой подписки -до версии 1.13.10. -Модуль был заменён модулем -ngx_http_api_module -в версии 1.13.3. - - - -
- - -
- - - -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; - } - - server { - listen 127.0.0.1; - - location /upstream_conf { - upstream_conf; - } - - location /status { - status; - } - - location = /status.html { - } - } -} - -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; - } -} - - - - -Примеры запросов информации о состоянии, -возможные с данной конфигурацией: - -http://127.0.0.1/status -http://127.0.0.1/status/nginx_version -http://127.0.0.1/status/caches/cache_backend -http://127.0.0.1/status/upstreams -http://127.0.0.1/status/upstreams/backend -http://127.0.0.1/status/upstreams/backend/peers/1 -http://127.0.0.1/status/upstreams/backend/peers/1/weight -http://127.0.0.1/status/stream -http://127.0.0.1/status/stream/upstreams -http://127.0.0.1/status/stream/upstreams/backend -http://127.0.0.1/status/stream/upstreams/backend/peers/1 -http://127.0.0.1/status/stream/upstreams/backend/peers/1/weight - - - - -В составе дистрибутива nginx имеется простая страница мониторинга, доступная -по запросу “/status.html” в стандартной конфигурации. -Для работы этой страницы требуется настроить location -“/status” и location “/status.html” -как показано выше. - - -
- - -
- - - - -location - - -Информация о состоянии будет доступна из содержащего location. -Доступ в location следует -ограничить. - - - - - - -json -jsonp [callback] -json -http -server -location - - -По умолчанию информация выводится в формате JSON. - - - -Также данные могут выводиться в формате JSONP. -Параметр callback задаёт имя callback-функции. -В значении параметра можно использовать переменные. -Если параметр не задан или вычисленное значение является пустой строкой, -используется имя “ngx_status_jsonp_callback”. - - - - - - -зона - -server - - -Включает сбор информации о состоянии виртуального сервера группы -http -или -stream -(1.7.11) в указанной зоне. -В одной и той же зоне может одновременно собираться информация -сразу по нескольким серверам. - - - - -
- - -
- - -Доступна следующая информация: - - -version - -Версия предоставляемого набора данных. -Текущей является версия 8. - - -nginx_version - -Версия nginx. - - -nginx_build - -Название сборки nginx. - - -address - -Адрес сервера, принявшего запрос на получение информации о состоянии. - - -generation - -Суммарное число -перезагрузок -конфигурации. - - -load_timestamp - -Время последней перезагрузки конфигурации, в миллисекундах с начала эпохи. - - -timestamp - -Текущее время в миллисекундах с начала эпохи. - - -pid - -Идентификатор рабочего процесса, -обработавшего запрос на получение информации о состоянии. - - -ppid - -Идентификатор главного процесса, -запустившего рабочий процесс. - - -processes - - - -respawned - -Суммарное число перезапусков аварийно завершённых -дочерних процессов. - - - - - -connections - - - -accepted - -Суммарное число принятых клиентских соединений. - - -dropped - -Суммарное число отвергнутых клиентских соединений. - - -active - -Текущее число активных клиентских соединений. - - -idle - -Текущее число бездействующих клиентских соединений. - - - - - -ssl - - - -handshakes - -Суммарное число успешных операций SSL handshake. - - -handshakes_failed - -Суммарное число неуспешных операций SSL handshake. - - -session_reuses - -Суммарное число повторных использований SSL-сессий -во время операций SSL handshake. - - - - - -requests - - - -total - -Суммарное число клиентских запросов. - - -current - -Текущее число клиентских запросов. - - - - - -server_zones - -Для каждой : - - -processing - -Число обрабатываемых в настоящий момент -клиентских запросов. - - -requests - -Суммарное число -запросов, полученных от клиентов. - - -responses - - - -total - -Суммарное число -ответов, отправленных клиентам. - - - -1xx, -2xx, -3xx, -4xx, -5xx - - -Число ответов со статусами 1xx, 2xx, 3xx, 4xx и 5xx. - - - - - -discarded - -Суммарное число запросов, завершившихся без отправки ответа. - - -received - -Суммарное число байт, полученных от клиентов. - - -sent - -Суммарное число байт, отправленных клиентам. - - - - - -slabs - -Для каждой зоны разделяемой памяти, в которой используется распределение slab: - - -pages - - - -used - -Текущее число занятых страниц памяти. - - -free - -Текущее число свободных страниц памяти. - - - - - -slots - -Для каждого размера слота памяти (8, 16, 32, 64, 128 и т.д.) -доступны следующие данные: - - -used - -Текущее число занятых слотов памяти. - - -free - -Текущее число свободных слотов памяти. - - -reqs - -Суммарное число попыток выделения памяти указанного размера. - - -fails - -Число неудачных попыток выделения памяти указанного размера. - - - - - - - - -upstreams - -Для каждой -динамически -настраиваемой -группы -доступны следующие данные: - - -peers - -Для каждого -сервера -доступны следующие данные: - - -id - -Идентификатор сервера. - - -server - -Адрес -сервера. - - -name - -Имя сервера, указанное в директиве -. - - -service - -Значение параметра - -директивы . - - -backup - -Логическое значение, означающее, является ли сервер -запасным. - - -weight - -Вес -сервера. - - -state - -Текущее состояние, которое может быть одним из -“up”, -“draining”, -“down”, -“unavail”, -“checking” -или -“unhealthy”. - - -active - -Текущее число активных соединений. - - -max_conns - -Ограничение -для сервера. - - -requests - -Суммарное число -клиентских запросов, перенаправленных на этот сервер. - - -responses - - - -total - -Суммарное число -ответов, полученных от этого сервера. - - - -1xx, -2xx, -3xx, -4xx, -5xx - - -Число ответов со статусами 1xx, 2xx, 3xx, 4xx и 5xx. - - - - - -sent - -Суммарное число байт, отправленных на этот сервер. - - -received - -Суммарное число байт, полученных с этого сервера. - - -fails - -Суммарное число -неудачных попыток работы с этим сервером. - - -unavail - -Количество раз, когда -сервер становился недоступным для клиентских запросов -(состояние “unavail”) -из-за достижения порогового числа неудачных попыток -. - - -health_checks - - - -checks - -Суммарное число запросов -проверки -работоспособности. - - -fails - -Число неудачных проверок работоспособности. - - -unhealthy - -Количество раз, когда -сервер становился неработоспособным (состояние “unhealthy”). - - -last_passed - -Логическое значение, означающее, была ли последняя проверка -работоспособности удачной и удовлетворял ли ответ заданным -тестам. - - - - - -downtime - -Суммарное время, -когда сервер находился в состояниях “unavail”, -“checking” и “unhealthy”. - - -downstart - -Время (в миллисекундах с начала эпохи), -когда сервер стал -“unavail”, -“checking” или “unhealthy”. - - -selected - -Время (в миллисекундах с начала эпохи), -когда сервер в последний раз был выбран для обработки запроса (1.7.5). - - -header_time - -Среднее время получения -заголовка -ответа от сервера (1.7.10). -До версии 1.11.6 -поле было доступно только при использовании метода балансировки -. - - -response_time - -Среднее время получения -всего -ответа от сервера (1.7.10). -До версии 1.11.6 -поле было доступно только при использовании метода балансировки -. - - - - - -keepalive - -Текущее число бездействующих --соединений. - - -zombies - -Текущее число серверов, удалённых -из группы, но всё ещё обрабатывающих активные клиентские запросы. - - -zone - -Имя зоны -разделяемой памяти, -в которой хранятся конфигурация группы и её рабочее состояние. - - -queue - -Для очереди запросов -доступны следующие данные: - - -size - -Текущее число запросов в очереди. - - -max_size - -Максимальное число запросов, которые могут одновременно находиться в очереди. - - -overflows - -Суммарное число запросов, отклонённых из-за переполнения очереди. - - - - - - - - -caches - -Для каждого кэша, сконфигурированного при помощи - -и аналогичных директив: - - -size - -Текущий размер кэша. - - -max_size - -Ограничение на максимальный размер кэша, заданное в конфигурации. - - -cold - -Логическое значение, указывающее, продолжается ли загрузка -данных процессом “cache loader” с диска в кэш. - - - - hit, - stale, - updating, - revalidated - - - - -responses - -Суммарное число ответов, прочитанных из кэша (попадания в кэш -или просроченные ответы вследствие - -и аналогичных директив). - - -bytes - -Суммарное число байт, прочитанных из кэша. - - - - - - - miss, - expired, - bypass - - - - -responses - -Суммарное число ответов, взятых не из кэша (miss — -отсутствие данных в кэше, expired — просроченные ответы, -bypass — ответ не был взят из кэша -вследствие -и аналогичных директив). - - -bytes - -Суммарное число байт, прочитанных с проксируемого сервера. - - -responses_written - -Суммарное число ответов, записанных в кэш. - - -bytes_written - -Суммарное число байт, записанных в кэш. - - - - - - - - -stream - - - -server_zones - -Для каждой : - - -processing - -Число обрабатываемых в настоящий момент -клиентских соединений. - - -connections - -Суммарное число -соединений, полученных от клиентов. - - -sessions - - - -total - -Суммарное число завершённых клиентских сессий. - - - -2xx, -4xx, -5xx - - -Число завершённых сессий со -статусами -2xx, 4xx или 5xx. - - - - - -discarded - -Суммарное число соединений, завершённых без создания сессии. - - -received - -Суммарное число байт, полученных от клиентов. - - -sent - -Суммарное число байт, отправленных клиентам. - - - - - -upstreams - -Для каждого -сервера -в -динамически -настраиваемой -группе -доступны следующие данные: - - -id - -Идентификатор сервера. - - -server - -Адрес -сервера. - - -name - -Имя сервера, указанное в директиве -. - - -service - -Значение параметра - -директивы . - - -backup - -Логическое значение, означающее, является ли сервер -запасным. - - -weight - -Вес -сервера. - - -state - -Текущее состояние, которое может быть одним из -“up”, -“down”, -“unavail”, -“checking” -или -“unhealthy”. - - -active - -Текущее число соединений. - - -max_conns - -Ограничение - -для сервера. - - -connections - -Суммарное число -клиентских соединений, перенаправленных на этот сервер. - - -connect_time - -Среднее время установки соединения с сервером группы. -До версии 1.11.6 -поле было доступно только при использовании метода балансировки -. - - -first_byte_time - -Среднее время получения первого байта данных. -До версии 1.11.6 -поле было доступно только при использовании метода балансировки -. - - -response_time - -Среднее время получения последнего байта данных. -До версии 1.11.6 -поле было доступно только при использовании метода балансировки -. - - -sent - -Суммарное число байт, отправленных на этот сервер. - - -received - -Суммарное число байт, полученных с этого сервера. - - -fails - -Суммарное число -неудачных попыток работы с этим сервером. - - -unavail - -Количество раз, когда -сервер становился недоступным для клиентских соединений -(состояние “unavail”) -из-за достижения порогового числа неудачных попыток -. - - -health_checks - - - -checks - -Суммарное число запросов -проверки -работоспособности. - - -fails - -Число неудачных проверок работоспособности. - - -unhealthy - -Количество раз, когда -сервер становился неработоспособным (состояние “unhealthy”). - - -last_passed - -Логическое значение, означающее, была ли последняя проверка -работоспособности удачной и удовлетворял ли ответ заданным -тестам. - - - - - -downtime - -Суммарное время, -когда сервер находился в состояниях “unavail”, -“checking” и “unhealthy”. - - -downstart - -Время (в миллисекундах с начала эпохи), -когда сервер стал -“unavail”, -“checking” или “unhealthy”. - - -selected - -Время (в миллисекундах с начала эпохи), -когда сервер в последний раз был выбран для обработки соединения. - - - - - -zombies - -Текущее число серверов, удалённых -из группы, но всё ещё обрабатывающих активные клиентские соединения. - - -zone - -Имя зоны -разделяемой памяти, -в которой хранятся конфигурация группы и её рабочее состояние. - - - - - - - - -
- -
- - - - - -Поле в -http и stream -upstreams -было добавлено в версии 8. - - - -Поля -были добавлены в версии 8. - - - -Состояние -checking -было добавлено в версии 8. - - - -Поля - и в -http и stream -upstreams -были добавлены в версии 8. - - - -Поля и -были добавлены в версии 8. - - - -Поля -и поле discarded в -stream server_zones -были добавлены в версии 7. - - - -Поле -было перемещено из debug-версии nginx -в версии 6. - - - -Поля -были добавлены в версии 6. - - - -Поле в - -было добавлено в версии 6. - - - -Поля -были добавлены в версии 6. - - - -Поле -было добавлено в версии 6. - - - -Список серверов в был -перемещён в в -версии 6. - - - -Поле keepalive сервера группы -было удалено в версии 5. - - - -stream -был добавлен в версии 5. - - - -Поле -было добавлено в версии 5. - - - -Поле в - -было добавлено в версии 5. - - - -Поля и в - -были добавлены в версии 5. - - - -Поле в - -было добавлено в версии 4. - - - -Состояние draining в - -было добавлено в версии 4. - - - -Поля и в - -были добавлены в версии 3. - - - -Поле revalidated в -было добавлено в версии 3. - - - -, -были добавлены в версии 2. - - - - - -
- -
diff --git a/xml/ru/docs/http/ngx_http_upstream_conf_module.xml b/xml/ru/docs/http/ngx_http_upstream_conf_module.xml deleted file mode 100644 --- a/xml/ru/docs/http/ngx_http_upstream_conf_module.xml +++ /dev/null @@ -1,351 +0,0 @@ - - - - - - - - -
- - -Модуль ngx_http_upstream_conf_module -позволяет оперативно настраивать группы серверов -при помощи простого HTTP-интерфейса без необходимости перезапуска nginx. -Группа серверов -http -или -stream -должна находиться в разделяемой памяти. - -Этот модуль был доступен как часть -коммерческой подписки -до версии 1.13.10. -Модуль был заменён модулем -ngx_http_api_module -в версии 1.13.3. - - - -
- - -
- - - -upstream backend { - zone upstream_backend 64k; - - ... -} - -server { - location /upstream_conf { - upstream_conf; - allow 127.0.0.1; - deny all; - } -} - - - -
- - -
- - - - -location - - -Активирует HTTP-интерфейс для настройки групп серверов в содержащем location. -Доступ в location следует -ограничить. - - - -С помощью команд настройки можно: - - -просматривать конфигурацию группы; - - -просматривать или изменять конфигурацию, а также -удалять серверы; - - -добавлять новые серверы. - - - -Поскольку адреса в группе не обязаны быть уникальными, -обращение к отдельным серверам в группе осуществляется по их идентификаторам. -Идентификаторы назначаются автоматически и показываются при добавлении сервера -или просмотре конфигурации группы. - - - - -Команда настройки состоит из параметров, передаваемых в аргументах запроса, -например: - -http://127.0.0.1/upstream_conf?upstream=backend - - - - -Поддерживаются следующие параметры: - - - - -stream= - -Выбирает группу серверов -stream. -Если параметр не задан, будет выбрана группа серверов -http. - - - -upstream=имя - -Выбирает группу серверов для работы. -Параметр является обязательным. - - - -id=число - -Выбирает сервер для просмотра, изменения или удаления. - - - -remove= - -Удаляет сервер из группы. - - - -add= - -Добавляет новый сервер в группу. - - - -backup= - -Необходим для добавления запасного сервера. - -До версии 1.7.2 параметр backup= требовался -также для просмотра, изменения или удаления существующих запасных серверов. - - - - -server=адрес - -То же, что и параметр “адрес” сервера группы -http -или -stream. - -При добавлении сервер можно задать в виде доменного имени. -В этом случае любые изменения IP-адресов, соответствующих доменному имени -сервера, отслеживаются и автоматически применяются к конфигурации группы -без необходимости перезапуска nginx (1.7.2). -Для этого в блоке -http -или -stream -должна быть задана директива “resolver”. -См. также параметр “resolve” сервера группы -http -или -stream. - - - - -service=имя - -То же, что и параметр “service” сервера группы -http -или -stream -(1.9.13). - - - -weight=число - -То же, что и параметр “weight” сервера группы -http -или -stream. - - - -max_conns=число - -То же, что и параметр “max_conns” сервера группы -http -или -stream. - - - -max_fails=число - -То же, что и параметр “max_fails” сервера группы -http -или -stream. - - - -fail_timeout=время - -То же, что и параметр “fail_timeout” сервера группы -http -или -stream. - - - -slow_start=время - -То же, что и параметр “slow_start” сервера группы -http -или -stream. - - - -down= - -То же, что и параметр “down” сервера группы -http -или -stream. - - -drain= - -Переводит сервер группы серверов -http -в режим “draining” (1.7.5). -В этом режиме на сервер будут проксироваться только -привязанные -к нему запросы. - - - -up= - -Параметр, обратный по значению параметру “down” сервера группы -http -или -stream. - - - -route=строка - -То же, что и параметр “route” сервера группы -http. - - - - -Первые три параметра выбирают объект. -Объектом может быть либо группа серверов http или stream, -либо отдельный сервер. -Если остальные параметры не указаны, то показывается конфигурация выбранной -группы или сервера. - - - -Например, команда для просмотра конфигурации всей группы -выглядит следующим образом: - -http://127.0.0.1/upstream_conf?upstream=backend - - -Для просмотра конфигурации отдельного сервера следует указать его идентификатор: - -http://127.0.0.1/upstream_conf?upstream=backend&id=42 - - - - -Для добавления нового сервера в группу -следует указать его адрес в параметре “server=”. -Если остальные параметры не указаны, то при добавлении сервера -их значения будут установлены по умолчанию (см. директиву -“server” для -http -или -stream). - - - -Например, команда для добавления нового основного сервера в группу -выглядит следующим образом: - -http://127.0.0.1/upstream_conf?add=&upstream=backend&server=127.0.0.1:8080 - - -Добавление нового запасного сервера происходит следующим образом: - -http://127.0.0.1/upstream_conf?add=&upstream=backend&backup=&server=127.0.0.1:8080 - - -Добавление нового основного сервера с нестандартными -значениями параметров и с пометкой его как постоянно недоступного -(“down”) происходит следующим образом: - -http://127.0.0.1/upstream_conf?add=&upstream=backend&server=127.0.0.1:8080&weight=2&down= - - -Для удаления сервера следует указать его идентификатор: - -http://127.0.0.1/upstream_conf?remove=&upstream=backend&id=42 - - -Пометка существующего сервера как постоянно недоступного -(“down”) происходит следующим образом: - -http://127.0.0.1/upstream_conf?upstream=backend&id=42&down= - - -Изменение адреса существующего сервера происходит следующим образом: - -http://127.0.0.1/upstream_conf?upstream=backend&id=42&server=192.0.2.3:8123 - - -Изменение других параметров существующего сервера происходит следующим образом: - -http://127.0.0.1/upstream_conf?upstream=backend&id=42&max_fails=3&weight=4 - - -Вышеприведённые примеры актуальны для группы серверов -http. -Аналогичные примеры для группы серверов -stream -требуют указания параметра “stream=”. - - - - -
- -
diff --git a/xml/ru/docs/http/ngx_http_upstream_hc_module.xml b/xml/ru/docs/http/ngx_http_upstream_hc_module.xml deleted file mode 100644 --- a/xml/ru/docs/http/ngx_http_upstream_hc_module.xml +++ /dev/null @@ -1,411 +0,0 @@ - - - - - - - - -
- - -Модуль ngx_http_upstream_hc_module -позволяет активировать периодические проверки работоспособности серверов в -группе, -указанной в содержащем location. -Группа должна находиться в -зоне разделяемой памяти. - - - -Если проверка работоспособности была неуспешной, -то сервер признаётся неработоспособным. -Если для группы задано несколько проверок, -то при любой неуспешной проверке соответствующий сервер будет -считаться неработоспособным. -На неработоспособные серверы и серверы в состоянии “checking” -клиентские запросы передаваться не будут. - - - - -Обратите внимание, что при использовании проверок -большинство переменных имеют пустые значения. - - - - - -Модуль доступен как часть -коммерческой подписки. - - - -
- - -
- - - -upstream dynamic { - zone upstream_dynamic 64k; - - server backend1.example.com weight=5; - server backend2.example.com:8080 fail_timeout=5s slow_start=30s; - server 192.0.2.1 max_fails=3; - - server backup1.example.com:8080 backup; - server backup2.example.com:8080 backup; -} - -server { - location / { - proxy_pass http://dynamic; - health_check; - } -} - -Каждому серверу группы backend -с интервалом в 5 секунд посылаются запросы “/”. -Если происходит ошибка или таймаут при работе с сервером, или -код ответа проксируемого сервера не равен -2xx или 3xx, проверка считается неуспешной и сервер -признаётся неработоспособным. - - - -Проверки работоспособности могут тестировать код ответа, -наличие или отсутствие определённых полей заголовка и их значений, -а также содержимое тела ответа. -Тесты настраиваются отдельно при помощи директивы -и указываются в параметре match. -Например: - -http { - server { - ... - location / { - proxy_pass http://backend; - health_check match=welcome; - } - } - - match welcome { - status 200; - header Content-Type = text/html; - body ~ "Welcome to nginx!"; - } -} - -В такой конфигурации успешный ответ на проверочный запрос -должен иметь код 200, тип содержимого “text/html” -и “Welcome to nginx!” в теле ответа. - - -
- - -
- - -[параметры] - -location - - -Активирует периодические проверки работоспособности серверов в -группе, -указанной в содержащем location. - - - -Могут быть заданы следующие необязательные параметры: - - - -interval=время - - -задаёт интервал между двумя последовательными проверками, -по умолчанию 5 секунд. - - - -jitter=время - - -задаёт время, в пределах которого -случайным образом задерживается каждая проверка, -по умолчанию задержки нет. - - - -fails=число - - -задаёт число последовательных неуспешных проверок для определённого сервера, -после которых сервер будет считаться неработоспособным, -по умолчанию 1. - - - -passes=число - - -задаёт число последовательных успешных проверок для определённого сервера, -после которых сервер будет считаться работоспособным, -по умолчанию 1. - - - -uri=uri - - -задаёт URI, используемый в запросах, проверяющих работоспособность, -по умолчанию “/”. - - - -mandatory [persistent] - - - -устанавливает исходное состояние “checking” для сервера -до завершения первой проверки работоспособности (1.11.7). -На серверы в состоянии “checking” клиентские запросы передаваться не будут. -Если параметр не указан, -то исходно сервер будет считаться работоспособным. - - - -Параметр persistent (1.19.7) -устанавливает исходное состояние “up” для сервера после перезагрузки nginx -в случае, если до перезагрузки сервер считался работоспособным. - - - - -match=имя - - -указывает на блок match с условиями, которым должен -удовлетворять ответ, чтобы результат проверки считался успешным. -По умолчанию код ответа должен быть 2xx или 3xx. - - - -port=число - - -задаёт порт, используемый при подключении к серверу -для проверки его работоспособности (1.9.7). -По умолчанию совпадает с портом -сервера. - - - -type=grpc -[grpc_service=имя] -[grpc_status=код] - - -активирует периодические -проверки -работоспособности gRPC-сервера -или службы gRPC, указанной при помощи необязательного -параметра grpc_service (1.19.5). -Если сервер не поддерживает протокол проверки работоспособности gRPC, -то можно использовать необязательный параметр grpc_status -для указания -статуса -(например -статус “12” / “UNIMPLEMENTED”) -при получении которого сервер признаётся работоспособным: - -health_check mandatory type=grpc grpc_status=12; - -Параметр type=grpc -должен быть указан после остальных параметров директивы, -grpc_service и grpc_status -должны быть указаны после type=grpc. -Параметр несовместим с параметрами -uri и -match. - - - -keepalive_time=время - - -включает keepalive -соединения в проверках работоспособности и задаёт время, в течение которого -могут обрабатываться запросы в рамках keepalive соединения (1.21.7). -По умолчанию keepalive соединения выключены. - - - - - - - - - -имя - -http - - -Задаёт именованный набор тестов для анализа ответов -на запросы проверки работоспособности. - - - -В ответе могут быть протестированы следующие объекты: - - -status 200; -код ответа равен 200 - -status ! 500; -код ответа не равен 500 - -status 200 204; -код ответа равен 200 или 204 - -status ! 301 302; -код ответа не равен ни 301, ни 302 - -status 200-399; -код ответа находится в диапазоне от 200 до 399 - -status ! 400-599; -код ответа находится вне диапазона от 400 до 599 - -status 301-303 307; -код ответа равен 301, 302, 303 или 307 - - - - - -header Content-Type = text/html; - -заголовок содержит
Content-Type
-со значением text/html -
- -header Content-Type != text/html; - -заголовок содержит
Content-Type
-со значением, отличным от text/html -
- -header Connection ~ close; - -заголовок содержит
Connection
-со значением, совпадающим с регулярным выражением close -
- -header Connection !~ close; - -заголовок содержит
Connection
-со значением, не совпадающим с регулярным выражением close -
- -header Host; -заголовок содержит
Host
- -header ! X-Accel-Redirect; -заголовок не содержит
X-Accel-Redirect
- -
- - - -body ~ "Welcome to nginx!"; - -тело ответа совпадает с регулярным выражением -“Welcome to nginx!” - - -body !~ "Welcome to nginx!"; - -тело ответа не совпадает с регулярным выражением -“Welcome to nginx!” - - - - - - -require - $переменная - ...; - -все указанные переменные непустые и не равны “0” (1.15.9). - - - -
- - -Если задано несколько тестов, -то ответ должен удовлетворять всем тестам. - -Проверяются только первые 256 Кбайт тела ответа. - - - - -Примеры: - -# код ответа 200, тип содержимого "text/html" -# и тело ответа содержит "Welcome to nginx!" -match welcome { - status 200; - header Content-Type = text/html; - body ~ "Welcome to nginx!"; -} - - - -# код ответа не равен 301, 302, 303 и 307 и заголовок не содержит "Refresh:" -match not_redirect { - status ! 301-303 307; - header ! Refresh; -} - - - -# код ответа успешный и сервер не в сервисном режиме -match server_ok { - status 200-399; - body !~ "maintenance mode"; -} - - - -# код ответа равен 200 или 204 -map $upstream_status $good_status { - 200 1; - 204 1; -} - -match server_ok { - require $good_status; -} - - - - -
- -
- -
diff --git a/xml/ru/docs/http/ngx_http_upstream_module.xml b/xml/ru/docs/http/ngx_http_upstream_module.xml --- a/xml/ru/docs/http/ngx_http_upstream_module.xml +++ b/xml/ru/docs/http/ngx_http_upstream_module.xml @@ -10,7 +10,7 @@ + rev="89">
@@ -50,37 +50,6 @@ server { - -Динамически настраиваемая группа -с периодическими -проверками работоспособности -доступна как часть -коммерческой подписки: - -resolver 10.0.0.1; - -upstream dynamic { - zone upstream_dynamic 64k; - - server backend1.example.com weight=5; - server backend2.example.com:8080 fail_timeout=5s slow_start=30s; - server 192.0.2.1 max_fails=3; - server backend3.example.com resolve; - server backend4.example.com service=http resolve; - - server backup1.example.com:8080 backup; - server backup2.example.com:8080 backup; -} - -server { - location / { - proxy_pass http://dynamic; - health_check; - } -} - - -
@@ -172,11 +141,6 @@ 5 запросов на backend1.example.com суммарное число активных и неактивных соединений с проксируемым сервером может превышать значение max_conns.
- -Начиная с версии 1.5.9 и до версии 1.11.5 -этот параметр был доступен как часть -коммерческой подписки. - @@ -242,118 +206,9 @@ 5 запросов на backend1.example.com
-Кроме того, -следующие параметры доступны как часть -коммерческой подписки: - - - -resolve - - -отслеживает изменения IP-адресов, соответствующих доменному имени сервера, -и автоматически изменяет конфигурацию группы -без необходимости перезапуска nginx (1.5.12). -Группа должна находиться в зоне разделяемой памяти. - -Для работы этого параметра -директива resolver -должна быть задана в блоке -http -или в соответствующем блоке upstream. - - - - -route=строка - - -задаёт имя маршрута к серверу. - - - -service=имя - - -включает преобразование -SRV-записей -DNS и задаёт имя сервиса (1.9.13). -Для работы параметра необходимо указать -параметр для сервера -и не указывать порт сервера. - -Если имя сервиса не содержит точку (“.”), то -имя составляется в соответствии с -RFC -и в префикс службы добавляется протокол TCP. -Например, для получения -SRV-записи _http._tcp.backend.example.com -необходимо указать директиву: - -server backend.example.com service=http resolve; - -Если имя сервиса содержит одну и более точек, то имя составляется -при помощи соединения префикса службы и имени сервера. -Например, для получения SRV-записей -_http._tcp.backend.example.comserver1.backend.example.com -необходимо указать директивы: - -server backend.example.com service=_http._tcp resolve; -server example.com service=server1.backend resolve; - - - - -SRV-записи с наивысшим приоритетом -(записи с одинаковым наименьшим значением приоритета) -преобразуются в основные серверы, -остальные SRV-записи преобразуются в запасные серверы. -Если в конфигурации сервера указан параметр , -высокоприоритетные SRV-записи преобразуются в запасные серверы, -остальные SRV-записи игнорируются. - - - - -slow_start=время - - -задаёт время, в течение которого вес сервера -восстановится от нуля до своего номинального значения в ситуации, когда -неработоспособный (unhealthy) сервер вновь становится работоспособным -(healthy) -или когда сервер становится доступным по прошествии времени, -в течение которого он считался недоступным. -Значение по умолчанию равно нулю и означает, что медленный старт выключен. -Параметр нельзя использовать совместно с -методами балансировки нагрузки -, и . - - - - -drain - - -переводит сервер в режим “draining” (1.13.6). -В этом режиме на сервер будут проксироваться только -привязанные к нему запросы. - -До версии 1.13.6 -параметр мог быть изменён только при помощи -модуля API. - - - - - - - - -Если в группе только один сервер, параметры max_fails, -fail_timeout и slow_start +Если в группе только один сервер, +параметры max_fails и fail_timeout игнорируются и такой сервер никогда не будет считаться недоступным. @@ -375,70 +230,6 @@ SRV-записи с наивысшим приоритетом В этом случае достаточно указать размер только один раз. - -Дополнительно, как часть -коммерческой подписки, -в таких группах для изменения состава группы -или настроек отдельных серверов -нет необходимости перезапускать nginx. -Конфигурация доступна через -модуль API (1.13.3). - -До версии 1.13.3 -конфигурация была доступна только через специальный location, -в котором указана директива -. - - - - - - - -файл - -upstream -1.9.7 - - -Задаёт файл, в котором хранится состояние -динамически настраиваемой группы. - - - -Примеры: - -state /var/lib/nginx/state/servers.conf; # путь для Linux -state /var/db/nginx/state/servers.conf; # путь для FreeBSD - - - - -В данный момент состояние ограничено списком серверов с их параметрами. -Файл читается при парсинге конфигурации и обновляется каждый раз при -изменении -конфигурации группы. -Изменение содержимого файла напрямую не рекомендуется. -Директиву нельзя использовать -совместно с директивой . - - - - -Изменения, совершённые в момент -перезагрузки конфигурации -или обновления бинарного файла, -могут быть потеряны. - - - - - -Эта директива доступна как часть -коммерческой подписки. - - - @@ -704,69 +495,6 @@ server { - - - -upstream -1.9.2 - - -Позволяет проксировать запросы с -проверкой -подлинности NTLM. -Соединение с сервером группы привязывается к клиентскому соединению -как только клиент отправляет запрос, в заголовке которого есть поле -
Authorization
со значением, -начинающимся с “Negotiate” или “NTLM”. -Последующие запросы клиента будут проксироваться через это же соединение -с сервером группы, -сохраняя контекст аутентификации. -
- - -Для работы проверки подлинности NTLM -необходимо разрешить постоянные соединения с серверами группы. -Директиву -следует установить в “1.1”, -а поле заголовка
Connection
 — очистить: - -upstream http_backend { - server 127.0.0.1:8080; - - ntlm; -} - -server { - ... - - location /http/ { - proxy_pass http://http_backend; - proxy_http_version 1.1; - proxy_set_header Connection ""; - ... - } -} - -
- - - -При использовании методов балансировки нагрузки, отличных -от стандартного round-robin, следует активировать их до -директивы ntlm. - - - - - -Эта директива доступна как часть -коммерческой подписки. - - - -
- - @@ -785,86 +513,6 @@ server { - - - header | - last_byte - [inflight] - -upstream -1.7.10 - - -Задаёт для группы метод балансировки нагрузки, при котором запрос -передаётся серверу с наименьшими средним временем ответа и -числом активных соединений с учётом весов серверов. -Если подходит сразу несколько серверов, то они выбираются циклически -(в режиме round-robin) с учётом их весов. - - - -Если указан параметр header, -то учитывается время получения -заголовка ответа. -Если указан параметр last_byte, то учитывается -время получения всего ответа. -Если указан параметр inflight (1.11.6), -то также учитываются незавершённые запросы. - -До версии 1.11.6 незавершённые запросы учитывались по умолчанию. - - - - - -Эта директива доступна как часть -коммерческой подписки. - - - - - - - - -число -[timeout=время] - -upstream -1.5.12 - - -Если при обработке запроса невозможно сразу выбрать сервер группы, то -запрос будет помещён в очередь. -Директива задаёт максимальное число запросов, -которые могут одновременно находиться в очереди. -Если очередь переполнена -или за время, задаваемое параметром timeout, -так и не удастся выбрать сервер для передачи ему запроса, -клиенту будет возвращена ошибка -. - - - -По умолчанию параметр timeout равен 60 секундам. - - - - -При использовании методов балансировки нагрузки, отличных -от стандартного round-robin, следует активировать их до -директивы queue. - - - -Эта директива доступна как часть -коммерческой подписки. - - - - - - [two [метод]] @@ -888,380 +536,6 @@ server { с наименьшим количеством активных соединений. - -Если указан метод least_time, то запрос передаётся серверу -с наименьшими средним временем ответа и числом активных соединений. -Если указан least_time=header, то учитывается -время получения заголовка ответа. -Если указан least_time=last_byte, то учитывается -время получения всего ответа. - -Метод least_time доступен как часть -коммерческой подписки. - - - - - - - - - адрес ... - [valid=время] - [ipv4=on|off] - [ipv6=on|off] - [status_zone=зона] - -upstream -1.17.5 - - -Задаёт серверы DNS, используемые для преобразования имён вышестоящих серверов -в адреса, например: - -resolver 127.0.0.1 [::1]:5353; - -Адрес может быть указан в виде доменного имени или IP-адреса, -и необязательного порта. -Если порт не указан, используется порт 53. -Серверы DNS опрашиваются циклически. - - - -По умолчанию nginx будет искать как IPv4-, так и IPv6-адреса -при преобразовании имён в адреса. -Если поиск IPv4- или IPv6-адресов нежелателен, -можно указать параметр ipv4=off (1.23.1) или -ipv6=off. - - - -По умолчанию nginx кэширует ответы, используя значение TTL из ответа. -Необязательный параметр valid позволяет это -переопределить: - -resolver 127.0.0.1 [::1]:5353 valid=30s; - - -Для предотвращения DNS-спуфинга рекомендуется -использовать DNS-серверы в защищённой доверенной локальной сети. - - - - -Необязательный параметр status_zone -включает -сбор информации -о запросах и ответах сервера DNS -в указанной зоне. - - - - -Эта директива доступна как часть -коммерческой подписки. - - - - - - - -время -30s -upstream -1.17.5 - - -Задаёт таймаут для преобразования имени в адрес, например: - -resolver_timeout 5s; - - - - - -Эта директива доступна как часть -коммерческой подписки. - - - - - - - - - cookie имя - [expires=время] - [domain=домен] - [httponly] - [samesite=strict|lax|none|$переменная] - [secure] - [path=путь] - - route $переменная ... - - learn - create=$переменная - lookup=$переменная - zone=имя:размер - [timeout=время] - [header] - [sync] - -upstream -1.5.7 - - -Включает режим привязки сеансов, в котором запросы клиента -будут передаваться на один и тот же сервер группы. -Доступны три метода: - -cookie - - - -При использовании метода cookie информация о -назначенном сервере передаётся в HTTP-куке: - -upstream backend { - server backend1.example.com; - server backend2.example.com; - - sticky cookie srv_id expires=1h domain=.example.com path=/; -} - - - - -Запрос от клиента, ещё не привязанного к определённому серверу, -передаётся на сервер, выбранный согласно настроенному методу балансировки. -Дальнейшие запросы от этого клиента передаются на тот же сервер. -Если назначенный сервер не может обработать запрос, выбирается новый -сервер как если бы клиент не имел привязки к серверу. - - -Так как любой метод балансировки пытается равномерно распределить нагрузку, -учитывая уже привязанные запросы, -сервер с наибольшим количеством привязанных запросов -имеет меньшую вероятность получить новые, не привязанные запросы. - - - - -Первый параметр задаёт имя куки, которую необходимо установить или проверить. -Значением куки является MD5-хэш IP-адреса и порта -(или пути UNIX-сокета) в шестнадцатеричном виде. -Однако если указан параметр “route” -директивы , то значением куки будет -значение параметра “route”: - -upstream backend { - server backend1.example.com route=a; - server backend2.example.com route=b; - - sticky cookie srv_id expires=1h domain=.example.com path=/; -} - -В этом случае значение куки “srv_id” будет -или a, или b. - - - -Дополнительные параметры могут быть следующими: - - -expires=время - -Задаёт время, в течение которого браузеру необходимо хранить куку. -Специальное значение max устанавливает срок хранения куки до -31 декабря 2037 года 23:55:55 GMT. -Если параметр не указан, то время действия куки ограничивается сессией браузера. - - -domain=домен - -Задаёт домен, для которого устанавливается кука. -В значении параметра можно использовать переменные (1.11.5). - - -httponly - -Добавляет атрибут HttpOnly к куке (1.7.11). - - -samesite=strict | -lax | none | $переменная - -Добавляет атрибут SameSite (1.19.4) к куке -с одним из следующих значений: -Strict, -Lax, -None или -при помощи переменных (1.23.3). -В последнем случае если переменная имеет пустое значение, -то атрибут SameSite не будет добавлен к куке, -если значение переменной равно -Strict, -Lax или -None, -то атрибуту будет назначено соответствующее значение, -иначе атрибуту будет назначено значение Strict. - - -secure - -Добавляет атрибут Secure к куке (1.7.11). - - -path=путь - -Задаёт путь, для которого устанавливается кука. - - - -Если пропущен тот или иной параметр, то соответствующего поля в куке не будет. - - - -route - - - -При использовании метода route проксируемый сервер назначает -клиенту маршрут по получении первого запроса. -Все последующие запросы от этого клиента будут содержать информацию о -маршруте в куке или URI. -Эта информация сравнивается с параметром “route” директивы - для идентификации сервера, на который -следует проксировать запрос. -Если параметр “route” не задан, то именем маршрута -будет являться MD5-хэш IP-адреса и порта -(или пути UNIX-сокета) в шестнадцатеричном виде. -Если назначенный сервер не может обработать запрос, выбирается новый сервер -согласно настроенному методу балансировки как если бы в запросе не было -информации о маршруте. - - - -Параметры метода route задают переменные, которые -могут содержать информацию о маршруте. -Первая непустая переменная используется для поиска соответствующего сервера. - - - -Пример: - -map $cookie_jsessionid $route_cookie { - ~.+\.(?P<route>\w+)$ $route; -} - -map $request_uri $route_uri { - ~jsessionid=.+\.(?P<route>\w+)$ $route; -} - -upstream backend { - server backend1.example.com route=a; - server backend2.example.com route=b; - - sticky route $route_cookie $route_uri; -} - -В этом примере маршрут берётся из куки “JSESSIONID”, -если она присутствует в запросе. -В противном случае используется маршрут из URI. - - - - -learn - - -При использовании метода learn (1.7.1) nginx -анализирует ответы от вышестоящего сервера и запоминает -начатые им сессии, которые обычно передаются в HTTP-куке. - -upstream backend { - server backend1.example.com:8080; - server backend2.example.com:8081; - - sticky learn - create=$upstream_cookie_examplecookie - lookup=$cookie_examplecookie - zone=client_sessions:1m; -} - - -В примере выше сервер группы создаёт сессию путём установки -куки “EXAMPLECOOKIE” в своём ответе. -Последующие запросы с этой кукой будут передаваться на этот же сервер. -Если сервер не может обработать запрос, выбирается новый -сервер как если бы клиент не имел привязки к серверу. - - - -Параметры create и lookup -задают переменные, в которых соответственно указывается способ -создания новых и поиска существующих сессий. -Оба параметра могут быть указаны больше одного раза -(в этом случае используется первая непустая переменная). - - - -Сессии хранятся в зоне разделяемой памяти, имя и -размер которой задаются параметром zone. -Зоны размером в 1 мегабайт достаточно для хранения около 4 тысяч сессий -на 64-битной платформе. -Сессии, к которым не было обращений в течение времени, заданного параметром -timeout, удаляются из зоны. -По умолчанию timeout равен 10 минутам. - - - -Параметр header (1.13.1) позволяет создавать сессию -сразу после получения заголовков ответа от сервера группы. - - - -Параметр sync (1.13.8) разрешает -синхронизацию -данной зоны разделяемой памяти. - - - - - - - - -Эта директива доступна как часть -коммерческой подписки. - - - - - - - -имя -[expires=время] -[domain=домен] -[path=путь] - -upstream - - -Эта директива устарела начиная с версии 1.5.7. -Вместо неё следует использовать аналогичную директиву - с изменённым синтаксисом: - -sticky cookie имя -[expires=время] -[domain=домен] -[path=путь]; - - -
@@ -1360,25 +634,6 @@ upstream backend { последнего сервера. -$upstream_last_server_name - -хранит имя последнего выбранного сервера группы (1.25.3); -позволяет передать его -через SNI: - -proxy_ssl_server_name on; -proxy_ssl_name $upstream_last_server_name; - - - - -Эта переменная доступна как часть -коммерческой подписки. - - - - - $upstream_queue_time хранит время, проведённое запросом в очереди diff --git a/xml/ru/docs/http/ngx_http_uwsgi_module.xml b/xml/ru/docs/http/ngx_http_uwsgi_module.xml --- a/xml/ru/docs/http/ngx_http_uwsgi_module.xml +++ b/xml/ru/docs/http/ngx_http_uwsgi_module.xml @@ -10,7 +10,7 @@ + rev="51">
@@ -383,11 +383,7 @@ range-запрос будет передан на uwsgi-сервер [manager_threshold=время] [loader_files=число] [loader_sleep=время] - [loader_threshold=время] - [purger=on|off] - [purger_files=число] - [purger_sleep=время] - [purger_threshold=время] + [loader_threshold=время] http @@ -432,16 +428,6 @@ uwsgi_cache_path /data/nginx/cache level разделяемой памяти, имя и размер которой задаются параметром keys_zone. Зоны размером в 1 мегабайт достаточно для хранения около 8 тысяч ключей. - -Как часть -коммерческой подписки -в зоне разделяемой памяти также хранится расширенная -информация о кэше, -поэтому для хранения аналогичного количества ключей необходимо указывать -больший размер зоны. -Например -зоны размером в 1 мегабайт достаточно для хранения около 4 тысяч ключей. - @@ -484,56 +470,6 @@ uwsgi_cache_path /data/nginx/cache level -Кроме того, -следующие параметры доступны как часть -коммерческой подписки: - - - - - - -purger=on|off - - -Указывает, будут ли записи в кэше, соответствующие -маске, -удалены с диска при помощи процесса “cache purger” (1.7.12). -Установка параметра в значение on -(по умолчанию off) -активирует процесс “cache purger”, который -проходит по всем записям в кэше -и удаляет записи, соответствующие этой маске. - - - -purger_files=число - - -Задаёт число элементов, которые будут сканироваться за одну итерацию (1.7.12). -По умолчанию purger_files равен 10. - - - -purger_threshold=время - - -Задаёт продолжительность одной итерации (1.7.12). -По умолчанию purger_threshold равен 50 миллисекундам. - - - -purger_sleep=время - - -Задаёт паузу между итерациями (1.7.12). -По умолчанию purger_sleep равен 50 миллисекундам. - - - - - - В версиях 1.7.3, 1.7.7 и 1.11.10 формат заголовка кэша был изменён. При обновлении на более новую версию nginx @@ -544,64 +480,6 @@ uwsgi_cache_path /data/nginx/cache level - -строка ... - -http -server -location -1.5.7 - - -Задаёт условия, при которых запрос будет считаться запросом -на очистку кэша. -Если значение хотя бы одного из строковых параметров непустое и не равно “0”, -то запись в кэше с соответствующим -ключом кэширования удаляется. -В результате успешной операции возвращается ответ с кодом -. - - - -Если ключ кэширования -запроса на очистку заканчивается -звёздочкой (“*”), то все записи в кэше, соответствующие -этой маске, будут удалены из кэша. -Тем не менее, эти записи будут оставаться на диске или до момента удаления -из-за отсутствия обращения к данным, -или до обработки их процессом “cache purger” (1.7.12), -или до попытки клиента получить к ним доступ. - - - -Пример конфигурации: - -uwsgi_cache_path /data/nginx/cache keys_zone=cache_zone:10m; - -map $request_method $purge_method { - PURGE 1; - default 0; -} - -server { - ... - location / { - uwsgi_pass http://backend; - uwsgi_cache cache_zone; - uwsgi_cache_key $uri; - uwsgi_cache_purge $purge_method; - } -} - - -Функциональность доступна как часть -коммерческой подписки. - - - - - - on | off off diff --git a/xml/ru/docs/index.xml b/xml/ru/docs/index.xml --- a/xml/ru/docs/index.xml +++ b/xml/ru/docs/index.xml @@ -8,7 +8,7 @@
@@ -224,21 +224,11 @@ ngx_http_addition_module - -ngx_http_api_module [en] - - - ngx_http_auth_basic_module - -ngx_http_auth_jwt_module - - - ngx_http_auth_request_module @@ -269,11 +259,6 @@ ngx_http_empty_gif_module - -ngx_http_f4f_module - - - ngx_http_fastcgi_module @@ -319,11 +304,6 @@ ngx_http_headers_module - -ngx_http_hls_module - - - ngx_http_image_filter_module @@ -334,21 +314,11 @@ ngx_http_index_module - -ngx_http_internal_redirect_module - - - ngx_http_js_module - -ngx_http_keyval_module [en] - - - ngx_http_limit_conn_module @@ -394,11 +364,6 @@ ngx_http_proxy_module - -ngx_http_proxy_protocol_vendor_module - - - ngx_http_random_index_module @@ -429,11 +394,6 @@ ngx_http_secure_link_module - -ngx_http_session_log_module [en] - - - ngx_http_slice_module @@ -454,11 +414,6 @@ ngx_http_ssl_module - -ngx_http_status_module - - - ngx_http_stub_status_module @@ -474,16 +429,6 @@ ngx_http_upstream_module - -ngx_http_upstream_conf_module - - - - -ngx_http_upstream_hc_module - - - ngx_http_userid_module @@ -587,11 +532,6 @@ ngx_stream_js_module - -ngx_stream_keyval_module [en] - - - ngx_stream_limit_conn_module @@ -607,26 +547,11 @@ ngx_stream_map_module - -ngx_stream_mqtt_preread_module - - - - -ngx_stream_mqtt_filter_module - - - ngx_stream_proxy_module - -ngx_stream_proxy_protocol_vendor_module - - - ngx_stream_realip_module @@ -661,16 +586,6 @@ ngx_stream_ssl_preread_module ngx_stream_upstream_module - - -ngx_stream_upstream_hc_module - - - - -ngx_stream_zone_sync_module [en] - - @@ -682,16 +597,6 @@ ngx_stream_zone_sync_module [en] ngx_google_perftools_module - - -ngx_mgmt_module [en] - - - - -ngx_otel_module [en] - - diff --git a/xml/ru/docs/mail/ngx_mail_core_module.xml b/xml/ru/docs/mail/ngx_mail_core_module.xml --- a/xml/ru/docs/mail/ngx_mail_core_module.xml +++ b/xml/ru/docs/mail/ngx_mail_core_module.xml @@ -10,7 +10,7 @@ + rev="22">
@@ -317,8 +317,7 @@ FreeBSD 9.0-STABLE) адрес ... [valid=time] [ipv4=on|off] - [ipv6=on|off] - [status_zone=зона] + [ipv6=on|off] off off mail @@ -375,16 +374,6 @@ resolver 127.0.0.1 [::1]:5353 valid=30s; - -Необязательный параметр status_zone (1.17.1) -включает -сбор информации -о запросах и ответах сервера DNS -в указанной зоне. -Параметр доступен как часть -коммерческой подписки. - - Специальное значение off запрещает использование DNS. diff --git a/xml/ru/docs/njs/examples.xml b/xml/ru/docs/njs/examples.xml --- a/xml/ru/docs/njs/examples.xml +++ b/xml/ru/docs/njs/examples.xml @@ -9,7 +9,7 @@
+ rev="22">
@@ -197,72 +197,6 @@ export default {jwt_payload_sub};
-
- - -nginx.conf: - -js_import http.js; - -keyval_zone zone=foo:10m; -#... - -location /keyval { - js_content http.set_keyval; -} - -location /version { - js_content http.version; -} - -location /api { - api write=on; -} - - - - -http.js: - -async function set_keyval(r) { - let res = await r.subrequest('/api/7/http/keyvals/foo', - { method: 'POST', - body: JSON.stringify({ foo: 789, bar: "ss dd 00" })}); - - if (res.status >= 300) { - r.return(res.status, res.responseBody); - return; - } - - r.return(200); -} - -async function version(r) { - let res = await r.subrequest('/api/7/nginx', { method: 'GET' }); - - if (res.status != 200) { - r.return(res.status); - return; - } - - var json = JSON.parse(res.responseBody); - r.return(200, json.version); -} - -export default {set_keyval, version}; - - -Директивы , - -доступны как часть -коммерческой подписки. - - - -
- -
@@ -392,56 +326,6 @@ export default {redirect};
- -
- - -nginx.conf: - -js_import http.js; - -js_set $num_requests http.num_requests; - -keyval_zone zone=foo:10m; - -keyval $remote_addr $foo zone=foo; - -log_format bar '$remote_addr [$time_local] $num_requests'; -access_log logs/access.log bar; - -server { - listen 8000; - - location / { - root html; - } -} - - - - -http.js: - -function num_requests(r) -{ - var n = r.variables.foo; - n = n ? Number(n) + 1 : 1; - r.variables.foo = n; - return n; -} - -export default {num_requests}; - - -Директивы и - -доступны как часть -коммерческой подписки. - - - -
-
diff --git a/xml/ru/docs/stream/ngx_stream_core_module.xml b/xml/ru/docs/stream/ngx_stream_core_module.xml --- a/xml/ru/docs/stream/ngx_stream_core_module.xml +++ b/xml/ru/docs/stream/ngx_stream_core_module.xml @@ -9,7 +9,7 @@ + rev="38">
@@ -347,8 +347,7 @@ FreeBSD 9.0-STABLE) адрес ... [valid=время] [ipv4=on|off] - [ipv6=on|off] - [status_zone=зона] + [ipv6=on|off] stream server @@ -387,23 +386,6 @@ resolver 127.0.0.1 [::1]:5353 valid=30s; - -Необязательный параметр status_zone (1.17.1) -включает -сбор информации -о запросах и ответах сервера DNS -в указанной зоне. -Параметр доступен как часть -коммерческой подписки. - - - - -До версии 1.11.3 эта директива была доступна как часть -коммерческой подписки. - - - @@ -419,10 +401,6 @@ resolver 127.0.0.1 [::1]:5353 valid=30s; resolver_timeout 5s; - -До версии 1.11.3 эта директива была доступна как часть -коммерческой подписки. - diff --git a/xml/ru/docs/stream/ngx_stream_limit_conn_module.xml b/xml/ru/docs/stream/ngx_stream_limit_conn_module.xml --- a/xml/ru/docs/stream/ngx_stream_limit_conn_module.xml +++ b/xml/ru/docs/stream/ngx_stream_limit_conn_module.xml @@ -10,7 +10,7 @@ + rev="8">
@@ -152,19 +152,6 @@ limit_conn_zone $binary_remote_addr zone - - -Дополнительно, как часть -коммерческой подписки, -информацию о состоянии -каждой такой зоны разделяемой памяти можно -получить или -сбросить -при помощи API -начиная с версии 1.17.7. - - -
diff --git a/xml/ru/docs/stream/ngx_stream_mqtt_filter_module.xml b/xml/ru/docs/stream/ngx_stream_mqtt_filter_module.xml deleted file mode 100644 --- a/xml/ru/docs/stream/ngx_stream_mqtt_filter_module.xml +++ /dev/null @@ -1,135 +0,0 @@ - - - - - - - - -
- - -Модуль ngx_stream_mqtt_filter_module (1.23.4) обеспечивает -поддержку протокола Message Queuing Telemetry Transport (MQTT) -версий -3.1.1 -и -5.0. - - - - -Модуль доступен как часть -коммерческой подписки. - - - -
- - -
- - - -listen 127.0.0.1:18883; -proxy_pass backend; -proxy_buffer_size 16k; - -mqtt on; -mqtt_set_connect clientid "$client"; -mqtt_set_connect username "$name"; - - - -
- - -
- - -on | off -off -stream -server - - -Включает протокол MQTT для данного виртуального сервера. - - - - - - -число размер -100 1k -stream -server -1.25.1 - - -Задаёт число и размер буферов, -необходимых для обработки MQTT-сообщений, -для одного соединения. - - - - - - -размер -4k|8k -server - - - -Эта директива устарела начиная с версии 1.25.1. -Вместо неё следует использовать директиву -. - - - - -Задаёт размер буфера, -в который будет записываться модифицированное сообщение. -По умолчанию размер одного буфера равен размеру страницы памяти. -В зависимости от платформы это или 4K, или 8K, -однако его можно сделать меньше. - - - - - - -поле значение - -server - - -Устанавливает поле -в заданное значение для сообщения CONNECT. -Поддерживаются следующие поля: -clientid, -username и -password. -В качестве значения можно использовать текст, переменные и их комбинации. - - - -На одном уровне может быть указано -несколько директив mqtt_set_connect: - -mqtt_set_connect clientid "$client"; -mqtt_set_connect username "$name"; - - - - - -
- -
diff --git a/xml/ru/docs/stream/ngx_stream_mqtt_preread_module.xml b/xml/ru/docs/stream/ngx_stream_mqtt_preread_module.xml deleted file mode 100644 --- a/xml/ru/docs/stream/ngx_stream_mqtt_preread_module.xml +++ /dev/null @@ -1,87 +0,0 @@ - - - - - - - - -
- - -Модуль ngx_stream_mqtt_preread_module (1.23.4) позволяет -извлекать информацию из сообщения CONNECT -протокола Message Queuing Telemetry Transport (MQTT) -версий -3.1.1 -и -5.0, -например имя пользователя или ID клиента. - - - - -Модуль доступен как часть -коммерческой подписки. - - - -
- - -
- - - -mqtt_preread on; -return $mqtt_preread_clientid; - - - -
- - -
- - -on | off -off -stream -server - - -Разрешает извлечение информации из сообщения СONNECT во время фазы -предварительного чтения. - - - - -
- - -
- - - - -$mqtt_preread_clientid - -значение clientid из СONNECT-сообщения - - -$mqtt_preread_username - -значение username из СONNECT-сообщения - - - - - -
- -
diff --git a/xml/ru/docs/stream/ngx_stream_proxy_module.xml b/xml/ru/docs/stream/ngx_stream_proxy_module.xml --- a/xml/ru/docs/stream/ngx_stream_proxy_module.xml +++ b/xml/ru/docs/stream/ngx_stream_proxy_module.xml @@ -9,7 +9,7 @@ + rev="33">
@@ -328,38 +328,6 @@ Cессия завершится после отправки всех принятых датаграмм - -on | off -off -stream -server -1.15.8 - - -Позволяет завершить все сессии к проксируемому серверу, -если он был удалён из группы или помечен как постоянно недоступный. -Это может произойти вследствие повторного -преобразования имён -в адреса, а также при помощи команды API -DELETE. -Сервер может быть помечен как постоянно недоступный в случае неуспешной -проверки работоспособности, -а также при помощи команды API -PATCH. -Сессия завершается при обработке очередного -события чтения или записи на стороне клиента или проксируемого сервера. - - - - -Эта директива доступна как часть -коммерческой подписки. - - - - - - on | off off diff --git a/xml/ru/docs/stream/ngx_stream_proxy_protocol_vendor_module.xml b/xml/ru/docs/stream/ngx_stream_proxy_protocol_vendor_module.xml deleted file mode 100644 --- a/xml/ru/docs/stream/ngx_stream_proxy_protocol_vendor_module.xml +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - - - -
- - -Модуль ngx_stream_proxy_protocol_vendor_module (1.23.3) -позволяет получать дополнительную информацию о соединении из -облачных платформ при помощи TLV, полученных из -заголовка -протокола -PROXY. - - - -Поддерживаемые облачные платформы: - - - -Amazon Web Services - - - -Google Cloud Platform - - - -Microsoft Azure - - - - - - -Протокол PROXY должен быть предварительно включён при помощи установки -параметра proxy_protocol в директиве -. - - - - -Модуль доступен как часть -коммерческой подписки - - - -
- - -
- - - -server { - listen 12345 proxy_protocol; - return $proxy_protocol_tlv_gcp_conn_id; -} - - - -
- - -
- - - - -$proxy_protocol_tlv_aws_vpce_id - -значение TLV, полученное из заголовка протокола PROXY, содержащее -ID -конечной точки VPC AWS - - -$proxy_protocol_tlv_azure_pel_id - -значение TLV, полученное из заголовка протокола PROXY, содержащее -LinkID -частной конечной точки Azure - - -$proxy_protocol_tlv_gcp_conn_id - -значение TLV, полученное из заголовка протокола PROXY, содержащее -ID соединения -Google Cloud PSC - - - - - -
- -
diff --git a/xml/ru/docs/stream/ngx_stream_upstream_hc_module.xml b/xml/ru/docs/stream/ngx_stream_upstream_hc_module.xml deleted file mode 100644 --- a/xml/ru/docs/stream/ngx_stream_upstream_hc_module.xml +++ /dev/null @@ -1,332 +0,0 @@ - - - - - - - - -
- - -Модуль ngx_stream_upstream_hc_module (1.9.0) -позволяет активировать периодические проверки работоспособности серверов в -группе. -Группа должна находиться в -зоне разделяемой памяти. - - - -Если проверка работоспособности была неуспешной, -то сервер признаётся неработоспособным. -Если для группы задано несколько проверок, -то при любой неуспешной проверке соответствующий сервер будет -считаться неработоспособным. -На неработоспособные серверы и серверы в состоянии “checking” -клиентские соединения передаваться не будут. - - - - -Модуль доступен как часть -коммерческой подписки. - - - -
- - -
- - - -upstream tcp { - zone upstream_tcp 64k; - - server backend1.example.com:12345 weight=5; - server backend2.example.com:12345 fail_timeout=5s slow_start=30s; - server 192.0.2.1:12345 max_fails=3; - - server backup1.example.com:12345 backup; - server backup2.example.com:12345 backup; -} - -server { - listen 12346; - proxy_pass tcp; - health_check; -} - -Для каждого сервера группы tcp -с интервалом в 5 секунд проверяется возможность установки TCP-соединения. -Если соединение с сервером не может быть установлено, -проверка считается неуспешной и сервер -признаётся неработоспособным. - - - -Проверки работоспособности можно настроить для протокола UDP: - -upstream dns_upstream { - - zone dns_zone 64k; - - server dns1.example.com:53; - server dns2.example.com:53; - server dns3.example.com:53; -} - -server { - listen 53 udp; - proxy_pass dns_upstream; - health_check udp; -} - -В этом случае проверяется отсутствие -сообщения ICMP “Destination Unreachable” -в ответ на отправленную строку “nginx health check”. - - - -Проверки работоспособности могут тестировать данные, полученные от сервера. -Тесты настраиваются отдельно при помощи директивы -и указываются в параметре match директивы -. - - -
- - -
- - -[параметры] - -server - - -Активирует периодические проверки работоспособности серверов в -группе. - - - -Могут быть заданы следующие необязательные параметры: - - - -interval=время - - -задаёт интервал между двумя последовательными проверками, -по умолчанию 5 секунд. - - - -jitter=время - - -задаёт время, в пределах которого -случайным образом задерживается каждая проверка, -по умолчанию задержки нет. - - - -fails=число - - -задаёт число последовательных неуспешных проверок для определённого сервера, -после которых сервер будет считаться неработоспособным, -по умолчанию 1. - - - -passes=число - - -задаёт число последовательных успешных проверок для определённого сервера, -после которых сервер будет считаться работоспособным, -по умолчанию 1. - - - -mandatory [persistent] - - - -устанавливает исходное состояние “checking” для сервера -до завершения первой проверки работоспособности (1.11.7). -На серверы в состоянии “checking” клиентские соединения передаваться не будут. -Если параметр не указан, -то исходно сервер будет считаться работоспособным. - - - -Параметр persistent (1.21.1) -устанавливает исходное состояние “up” для сервера после перезагрузки nginx -в случае, если до перезагрузки сервер считался работоспособным. - - - - -match=имя - - -указывает на блок match с условиями, которым должно -удовлетворять соединение, чтобы результат проверки считался успешным. -По умолчанию для TCP проверяется -лишь возможность установки TCP-соединения с сервером, -для UDP проверяется отсутствие -сообщения ICMP “Destination Unreachable” -в ответ на отправленную строку “nginx health check”. - -До версии 1.11.7 по умолчанию для UDP -требовалось наличие блока match с параметрами -send и expect. - - - - -port=число - - -задаёт порт, используемый при подключении к серверу -для проверки его работоспособности (1.9.7). -По умолчанию совпадает с портом -сервера. - - - -udp - - -указывает, что для проверки работоспособности будет использоваться протокол -UDP -вместо протокола TCP, используемого по умолчанию (1.9.13). - - - - - - - - - -время -5s -stream -server - - -Переопределяет значение - -для проверок работоспособности. - - - - - - -имя - -stream - - -Задаёт именованный набор тестов для для анализа ответов сервера -на запросы проверки работоспособности. - - - -Могут быть заданы следующие параметры: - - - -send строка; - - -отправляет строку на сервер; - - - -expect стока | -~ regex; - - -текстовая строка (1.9.12) или регулярное выражение, -которым должны соответствовать данные, полученные с сервера. -Регулярное выражение задаётся либо с модификатором -“~*” (для поиска совпадения без учёта регистра символов), -либо с модификатором “~” (с учётом регистра). - - - -Параметры send и expect -могут содержать строки в шестнадцатеричном виде -с префиксом “\x” -и последующими двумя шестнадцатеричными цифрами, -например “\x80” (1.9.12). - - - -Проверка работоспособности считается успешной, если - - -TCP-соединение успешно установлено; - - - -строка из параметра send -была отправлена (если была задана); - - - -данные, полученные от сервера, совпали со строкой или регулярным выражением -из параметра expect (если был задан); - - - -истёкшее время не превышает значение, указанное -в директиве . - - - - - - -Пример: - -upstream backend { - zone upstream_backend 10m; - server 127.0.0.1:12345; -} - -match http { - send "GET / HTTP/1.0\r\nHost: localhost\r\n\r\n"; - expect ~ "200 OK"; -} - -server { - listen 12346; - proxy_pass backend; - health_check match=http; -} - - - - - -Проверяются лишь первые байты данных -, -полученные от сервера. - - - - - -
- -
diff --git a/xml/ru/docs/stream/ngx_stream_upstream_module.xml b/xml/ru/docs/stream/ngx_stream_upstream_module.xml --- a/xml/ru/docs/stream/ngx_stream_upstream_module.xml +++ b/xml/ru/docs/stream/ngx_stream_upstream_module.xml @@ -9,7 +9,7 @@ + rev="40">
@@ -45,36 +45,6 @@ server { - -Динамически настраиваемая группа -с периодическими -проверками работоспособности -доступна как часть -коммерческой подписки: - -resolver 10.0.0.1; - -upstream dynamic { - zone upstream_dynamic 64k; - - server backend1.example.com:12345 weight=5; - server backend2.example.com:12345 fail_timeout=5s slow_start=30s; - server 192.0.2.1:12345 max_fails=3; - server backend3.example.com:12345 resolve; - server backend4.example.com service=http resolve; - - server backup1.example.com:12345 backup; - server backup2.example.com:12345 backup; -} - -server { - listen 12346; - proxy_pass dynamic; - health_check; -} - - -
@@ -156,10 +126,6 @@ 5 соединений на backend1.example.com:12345 Значение по умолчанию равно 0 и означает, что ограничения нет. Если группа не находится в зоне разделяемой памяти, то ограничение работает отдельно для каждого рабочего процесса. - -До версии 1.11.5 этот параметр был доступен как часть -коммерческой подписки. - @@ -220,96 +186,9 @@ 5 соединений на backend1.example.com:12345 -Кроме того, -следующие параметры доступны как часть -коммерческой подписки: - - - -resolve - - -отслеживает изменения IP-адресов, соответствующих доменному имени сервера, -и автоматически изменяет конфигурацию группы -без необходимости перезапуска nginx. -Группа должна находиться в зоне разделяемой памяти. - -Для работы этого параметра -директива resolver -должна быть задана в блоке -stream -или в соответствующем блоке upstream. - - - - -service=имя - - -включает преобразование -SRV-записей -DNS и задаёт имя сервиса (1.9.13). -Для работы параметра необходимо указать -параметр для сервера -и не указывать порт сервера. - -Если имя сервиса не содержит точку (“.”), то -имя составляется в соответствии с -RFC -и в префикс службы добавляется протокол TCP. -Например, для получения -SRV-записи _http._tcp.backend.example.com -необходимо указать директиву: - -server backend.example.com service=http resolve; - -Если имя сервиса содержит одну и более точек, то имя составляется -при помощи соединения префикса службы и имени сервера. -Например, для получения SRV-записей -_http._tcp.backend.example.comserver1.backend.example.com -необходимо указать директивы: - -server backend.example.com service=_http._tcp resolve; -server example.com service=server1.backend resolve; - - - - -SRV-записи с наивысшим приоритетом -(записи с одинаковым наименьшим значением приоритета) -преобразуются в основные серверы, -остальные SRV-записи преобразуются в запасные серверы. -Если в конфигурации сервера указан параметр , -высокоприоритетные SRV-записи преобразуются в запасные серверы, -остальные SRV-записи игнорируются. - - - - -slow_start=время - - -задаёт время, в течение которого вес сервера -восстановится от нуля до своего номинального значения в ситуации, когда -неработоспособный (unhealthy) сервер вновь становится работоспособным -(healthy) -или когда сервер становится доступным по прошествии времени, -в течение которого он считался недоступным. -Значение по умолчанию равно нулю и означает, что медленный старт выключен. -Параметр нельзя использовать совместно с -методами балансировки нагрузки и . - - - - - - - - -Если в группе только один сервер, параметры max_fails, -fail_timeout и slow_start +Если в группе только один сервер, +параметры max_fails и fail_timeout игнорируются и такой сервер никогда не будет считаться недоступным. @@ -330,70 +209,6 @@ SRV-записи с наивысшим приоритетом В этом случае достаточно указать размер только один раз. - -Дополнительно, как часть -коммерческой подписки, -в таких группах для изменения состава группы -или настроек отдельных серверов -нет необходимости перезапускать nginx. -Конфигурация доступна через -модуль API (1.13.3). - -До версии 1.13.3 -конфигурация была доступна только через специальный location, -в котором указана директива -. - - - -
- - - -файл - -upstream -1.9.7 - - -Задаёт файл, в котором хранится состояние -динамически настраиваемой группы. - - - -Примеры: - -state /var/lib/nginx/state/servers.conf; # путь для Linux -state /var/db/nginx/state/servers.conf; # путь для FreeBSD - - - - -В данный момент состояние ограничено списком серверов с их параметрами. -Файл читается при парсинге конфигурации и обновляется каждый раз при -изменении -конфигурации группы. -Изменение содержимого файла напрямую не рекомендуется. -Директиву нельзя использовать -совместно с директивой . - - - - -Изменения, совершённые в момент -перезагрузки конфигурации -или обновления бинарного файла, -могут быть потеряны. - - - - - -Эта директива доступна как часть -коммерческой подписки. - - - @@ -450,51 +265,6 @@ hash $remote_addr; - - - connect | - first_byte | - last_byte - [inflight] - -upstream - - -Задаёт для группы метод балансировки нагрузки, при котором соединение -передаётся серверу с наименьшими средним временем ответа и -числом активных соединений с учётом весов серверов. -Если подходит сразу несколько серверов, то они выбираются циклически -(в режиме round-robin) с учётом их весов. - - - -Если указан параметр connect, -то учитывается время -соединения с сервером группы. -Если указан параметр first_byte, -то учитывается время получения -первого байта данных. -Если указан параметр last_byte, -то учитывается время получения -последнего байта данных. -Если указан параметр inflight (1.11.6), -то также учитываются незавершённые соединения. - -До версии 1.11.6 -незавершённые соединения учитывались по умолчанию. - - - - - -Эта директива доступна как часть -коммерческой подписки. - - - - - - [two [метод]] @@ -518,110 +288,6 @@ hash $remote_addr; с наименьшим количеством активных соединений. - -Если указан метод least_time, то соединение передаётся -серверу -с наименьшими средним временем ответа и числом активных соединений. -Если указан least_time=connect, -то учитывается время -соединения с сервером группы. -Если указан least_time=first_byte, -то учитывается время получения -первого байта данных. -Если указан least_time=last_byte, -то учитывается время получения -последнего байта данных. - -Метод least_time доступен как часть -коммерческой подписки. - - - - - - - - - адрес ... - [valid=время] - [ipv4=on|off] - [ipv6=on|off] - [status_zone=зона] - -upstream -1.17.5 - - -Задаёт серверы DNS, используемые для преобразования имён вышестоящих серверов -в адреса, например: - -resolver 127.0.0.1 [::1]:5353; - -Адрес может быть указан в виде доменного имени или IP-адреса, -и необязательного порта. -Если порт не указан, используется порт 53. -Серверы DNS опрашиваются циклически. - - - -По умолчанию nginx будет искать как IPv4-, так и IPv6-адреса -при преобразовании имён в адреса. -Если поиск IPv4- или IPv6-адресов нежелателен, -можно указать параметр ipv4=off (1.23.1) или -ipv6=off. - - - -По умолчанию nginx кэширует ответы, используя значение TTL из ответа. -Необязательный параметр valid позволяет это -переопределить: - -resolver 127.0.0.1 [::1]:5353 valid=30s; - - -Для предотвращения DNS-спуфинга рекомендуется -использовать DNS-серверы в защищённой доверенной локальной сети. - - - - -Необязательный параметр status_zone -включает -сбор информации -о запросах и ответах сервера DNS -в указанной зоне. - - - - -Эта директива доступна как часть -коммерческой подписки. - - - - - - - -время -30s -upstream -1.17.5 - - -Задаёт таймаут для преобразования имени в адрес, например: - -resolver_timeout 5s; - - - - - -Эта директива доступна как часть -коммерческой подписки. - - -
diff --git a/xml/ru/docs/syslog.xml b/xml/ru/docs/syslog.xml --- a/xml/ru/docs/syslog.xml +++ b/xml/ru/docs/syslog.xml @@ -97,9 +97,6 @@ access_log syslog:server=[2001:db8::1]:1 Запись в syslog доступна начиная с версии 1.7.1. -Как часть -коммерческой подписки -запись в syslog доступна начиная с версии 1.5.3. diff --git a/xml/ru/support.xml b/xml/ru/support.xml --- a/xml/ru/support.xml +++ b/xml/ru/support.xml @@ -8,18 +8,7 @@
- - -
- - -Мы предлагаем -платную техническую поддержку -для nginx и наших коммерческих продуктов. - - -
+ rev="11">
diff --git a/xsls/versions.xsls b/xsls/versions.xsls --- a/xsls/versions.xsls +++ b/xsls/versions.xsls @@ -15,10 +15,4 @@ X:template = "stable_version" { /versions/download[@tag='stable'][1]/item[1]/@ver"; } -X:template = "commercial_version" { - - !!; - } - -} diff --git a/yaml/GNUmakefile b/yaml/GNUmakefile deleted file mode 100644 --- a/yaml/GNUmakefile +++ /dev/null @@ -1,11 +0,0 @@ -API_HEAD=../xml/en/docs/http/ngx_http_api_module_head.xml - -../xml/en/docs/http/ngx_http_api_module.xml: \ - nginx_api.yaml \ - yaml2xml.py \ - $(API_HEAD) - cat $(API_HEAD) > $@ - ./yaml2xml.py nginx_api.yaml >> $@ - echo "" >> $@ - -.DELETE_ON_ERROR: diff --git a/yaml/nginx_api.yaml b/yaml/nginx_api.yaml deleted file mode 100644 --- a/yaml/nginx_api.yaml +++ /dev/null @@ -1,4848 +0,0 @@ -swagger: '2.0' -info: - version: '9.0' - title: NGINX Plus REST API - description: NGINX Plus REST - [API](https://nginx.org/en/docs/http/ngx_http_api_module.html) - provides access to NGINX Plus status information, - on-the-fly configuration of upstream servers and - key-value pairs management for - [http](https://nginx.org/en/docs/http/ngx_http_keyval_module.html) and - [stream](https://nginx.org/en/docs/stream/ngx_stream_keyval_module.html). -basePath: /api/9 -tags: - - name: General Info - - name: Processes - - name: Connections - - name: Workers - - name: Slabs - - name: Resolvers - - name: SSL - - name: HTTP - - name: HTTP Requests - - name: HTTP Server Zones - - name: HTTP Location Zones - - name: HTTP Caches - - name: HTTP Limit Conns - - name: HTTP Limit Reqs - - name: HTTP Keyvals - - name: HTTP Upstreams - - name: Stream - - name: Stream Server Zones - - name: Stream Limit Conns - - name: Stream Keyvals - - name: Stream Upstreams - - name: Stream Zone Sync - - name: Method GET - - name: Method POST - - name: Method PATCH - - name: Method DELETE -schemes: - - http - - https -paths: - /: - get: - tags: - - General Info - - Method GET - summary: Return list of root endpoints - description: Returns a list of root endpoints. - operationId: getAPIEndpoints - produces: - - application/json - responses: - '200': - description: Success - schema: - $ref: '#/definitions/ArrayOfStrings' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - /nginx: - get: - tags: - - General Info - - Method GET - summary: Return status of nginx running instance - description: Returns nginx version, build name, address, - number of configuration reloads, IDs of master and worker processes. - operationId: getNginx - produces: - - application/json - parameters: - - in: query - name: fields - type: string - description: Limits which fields of nginx running instance will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxObject' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - /processes: - get: - tags: - - Processes - - Method GET - summary: Return nginx processes status - description: Returns the number of abnormally terminated - and respawned child processes. - operationId: getProcesses - produces: - - application/json - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxProcesses' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - delete: - tags: - - Processes - - Method DELETE - summary: Reset nginx processes statistics - description: Resets counters of abnormally terminated and respawned - child processes. - operationId: deleteProcesses - responses: - '204': - description: Success - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - /connections: - get: - tags: - - Connections - - Method GET - summary: Return client connections statistics - description: Returns statistics of client connections. - operationId: getConnections - produces: - - application/json - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxConnections' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - parameters: - - in: query - name: fields - type: string - description: Limits which fields of the connections statistics will be output. - delete: - tags: - - Connections - - Method DELETE - summary: Reset client connections statistics - description: Resets statistics of accepted and dropped - client connections. - operationId: deleteConnections - responses: - '204': - description: Success - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - /slabs/: - get: - tags: - - Slabs - - Method GET - summary: Return status of all slabs - description: Returns status of slabs - for each shared memory zone with slab allocator. - operationId: getSlabs - produces: - - application/json - parameters: - - in: query - name: fields - type: string - description: Limits which fields of slab zones will be output. - If the “fields” value is empty, - then only zone names will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxSlabZoneMap' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '/slabs/{slabZoneName}': - parameters: - - name: slabZoneName - in: path - description: The name of the shared memory zone with slab allocator. - required: true - type: string - get: - tags: - - Slabs - - Method GET - summary: Return status of a slab - description: Returns status of slabs for a particular shared memory zone - with slab allocator. - operationId: getSlabZone - produces: - - application/json - parameters: - - in: query - name: fields - type: string - description: Limits which fields of the slab zone will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxSlabZone' - '404': - description: | - Slab not found (*SlabNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - delete: - tags: - - Slabs - - Method DELETE - summary: Reset slab statistics - description: Resets the “reqs” and “fails” - metrics for each memory slot. - operationId: deleteSlabZoneStats - responses: - '204': - description: Success - '404': - description: | - Slab not found (*SlabNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - /http/: - get: - tags: - - HTTP - - Method GET - summary: Return list of HTTP-related endpoints - description: Returns a list of first level HTTP endpoints. - operationId: getHttp - produces: - - application/json - responses: - '200': - description: Success - schema: - $ref: '#/definitions/ArrayOfStrings' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - /http/requests: - get: - tags: - - HTTP Requests - - Method GET - summary: Return HTTP requests statistics - description: Returns status of client HTTP requests. - operationId: getHttpRequests - produces: - - application/json - parameters: - - in: query - name: fields - type: string - description: Limits which fields of client HTTP requests statistics - will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxHTTPRequests' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - delete: - tags: - - HTTP Requests - - Method DELETE - summary: Reset HTTP requests statistics - description: Resets the number of total client HTTP requests. - operationId: deleteHttpRequests - responses: - '204': - description: Success - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - /http/server_zones/: - get: - tags: - - HTTP Server Zones - - Method GET - summary: Return status of all HTTP server zones - description: Returns status information for each HTTP - [server zone](https://nginx.org/en/docs/http/ngx_http_api_module.html#status_zone). - operationId: getHttpServerZones - produces: - - application/json - parameters: - - in: query - name: fields - type: string - description: Limits which fields of server zones will be output. - If the “fields” value is empty, - then only server zone names will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxHTTPServerZonesMap' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '/http/server_zones/{httpServerZoneName}': - parameters: - - name: httpServerZoneName - in: path - description: The name of an HTTP server zone. - type: string - required: true - get: - tags: - - HTTP Server Zones - - Method GET - summary: Return status of an HTTP server zone - description: Returns status of a particular HTTP server zone. - operationId: getHttpServerZone - produces: - - application/json - parameters: - - name: fields - in: query - type: string - description: Limits which fields of the server zone will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxHTTPServerZone' - '404': - description: | - Server zone not found (*ServerZoneNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - delete: - tags: - - HTTP Server Zones - - Method DELETE - summary: Reset statistics for an HTTP server zone - description: Resets statistics of accepted and discarded requests, responses, - received and sent bytes, counters of SSL handshakes and session reuses - in a particular HTTP server zone. - operationId: deleteHttpServerZoneStat - responses: - '204': - description: Success - '404': - description: | - Server zone not found (*ServerZoneNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - /http/location_zones/: - get: - tags: - - HTTP Location Zones - - Method GET - summary: Return status of all HTTP location zones - description: Returns status information for each HTTP - [location zone](https://nginx.org/en/docs/http/ngx_http_api_module.html#status_zone_location). - operationId: getHttpLocationZones - produces: - - application/json - parameters: - - in: query - name: fields - type: string - description: Limits which fields of location zones will be output. - If the “fields” value is empty, - then only zone names will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxHTTPLocationZonesMap' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '/http/location_zones/{httpLocationZoneName}': - parameters: - - name: httpLocationZoneName - in: path - description: The name of an HTTP [location zone](https://nginx.org/en/docs/http/ngx_http_api_module.html#status_zone_location). - type: string - required: true - get: - tags: - - HTTP Location Zones - - Method GET - summary: Return status of an HTTP location zone - description: Returns status of a particular - HTTP [location zone](https://nginx.org/en/docs/http/ngx_http_api_module.html#status_zone_location). - operationId: getHttpLocationZone - produces: - - application/json - parameters: - - name: fields - in: query - type: string - description: Limits which fields of the location zone will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxHTTPLocationZone' - '404': - description: | - Location zone not found (*LocationZoneNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - delete: - tags: - - HTTP Location Zones - - Method DELETE - summary: Reset statistics for a location zone. - description: Resets statistics of accepted and discarded requests, responses, - received and sent bytes in a particular location zone. - operationId: deleteHttpLocationZoneStat - responses: - '204': - description: Success - '404': - description: | - Location zone not found (*LocationZoneNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - /http/caches/: - get: - tags: - - HTTP Caches - - Method GET - summary: Return status of all caches - description: Returns status of each cache configured by - [proxy_cache_path](https://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_cache_path) - and other “*_cache_path” directives. - operationId: getHttpCaches - produces: - - application/json - parameters: - - name: fields - in: query - type: string - description: Limits which fields of cache zones will be output. - If the “fields” value is empty, - then only names of cache zones will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxHTTPCachesMap' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '/http/caches/{httpCacheZoneName}': - parameters: - - name: httpCacheZoneName - in: path - description: The name of the cache zone. - type: string - required: true - get: - tags: - - HTTP Caches - - Method GET - summary: Return status of a cache - description: Returns status of a particular cache. - operationId: getHttpCacheZone - produces: - - application/json - parameters: - - name: fields - in: query - type: string - description: Limits which fields of the cache zone will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxHTTPCache' - '404': - description: | - Cache not found (*CacheNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - delete: - tags: - - HTTP Caches - - Method DELETE - summary: Reset cache statistics - description: Resets statistics of cache hits/misses in a particular cache zone. - operationId: deleteHttpCacheZoneStat - responses: - '204': - description: Success - '404': - description: | - Cache not found (*CacheNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - /http/limit_conns/: - get: - tags: - - HTTP Limit Conns - - Method GET - summary: Return status of all HTTP limit_conn zones - description: Returns status information for each HTTP - [limit_conn zone](https://nginx.org/en/docs/http/ngx_http_limit_conn_module.html#limit_conn_zone). - operationId: getHttpLimitConnZones - produces: - - application/json - parameters: - - in: query - name: fields - type: string - description: Limits which fields of limit_conn zones will be output. - If the “fields” value is empty, - then only zone names will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxHTTPLimitConnZonesMap' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '/http/limit_conns/{httpLimitConnZoneName}': - parameters: - - name: httpLimitConnZoneName - in: path - description: The name of a - [limit_conn zone](https://nginx.org/en/docs/http/ngx_http_limit_conn_module.html#limit_conn_zone). - type: string - required: true - get: - tags: - - HTTP Limit Conns - - Method GET - summary: Return status of an HTTP limit_conn zone - description: Returns status of a particular HTTP - [limit_conn zone](https://nginx.org/en/docs/http/ngx_http_limit_conn_module.html#limit_conn_zone). - operationId: getHttpLimitConnZone - produces: - - application/json - parameters: - - name: fields - in: query - type: string - description: Limits which fields of the - [limit_conn zone](https://nginx.org/en/docs/http/ngx_http_limit_conn_module.html#limit_conn_zone) - will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxHTTPLimitConnZone' - '404': - description: | - limit_conn not found (*LimitConnNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - delete: - tags: - - HTTP Limit Conns - - Method DELETE - summary: Reset statistics for an HTTP limit_conn zone - description: Resets the connection limiting statistics. - operationId: deleteHttpLimitConnZoneStat - responses: - '204': - description: Success - '404': - description: | - limit_conn not found (*LimitConnNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - /http/limit_reqs/: - get: - tags: - - HTTP Limit Reqs - - Method GET - summary: Return status of all HTTP limit_req zones - description: Returns status information for each HTTP - [limit_req zone](https://nginx.org/en/docs/http/ngx_http_limit_req_module.html#limit_req_zone). - operationId: getHttpLimitReqZones - produces: - - application/json - parameters: - - in: query - name: fields - type: string - description: Limits which fields of limit_req zones will be output. - If the “fields” value is empty, - then only zone names will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxHTTPLimitReqZonesMap' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '/http/limit_reqs/{httpLimitReqZoneName}': - parameters: - - name: httpLimitReqZoneName - in: path - description: The name of a - [limit_req zone](https://nginx.org/en/docs/http/ngx_http_limit_req_module.html#limit_req_zone). - type: string - required: true - get: - tags: - - HTTP Limit Reqs - - Method GET - summary: Return status of an HTTP limit_req zone - description: Returns status of a particular HTTP - [limit_req zone](https://nginx.org/en/docs/http/ngx_http_limit_req_module.html#limit_req_zone). - operationId: getHttpLimitReqZone - produces: - - application/json - parameters: - - name: fields - in: query - type: string - description: Limits which fields of the - [limit_req zone](https://nginx.org/en/docs/http/ngx_http_limit_req_module.html#limit_req_zone) - will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxHTTPLimitReqZone' - '404': - description: | - limit_req not found (*LimitReqNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - delete: - tags: - - HTTP Limit Reqs - - Method DELETE - summary: Reset statistics for an HTTP limit_req zone - description: Resets the requests limiting statistics. - operationId: deleteHttpLimitReqZoneStat - responses: - '204': - description: Success - '404': - description: | - limit_req not found (*LimitReqNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - /http/upstreams/: - get: - tags: - - HTTP Upstreams - - Method GET - summary: Return status of all HTTP upstream server groups - description: Returns status of each HTTP upstream server group - and its servers. - operationId: getHttpUpstreams - produces: - - application/json - parameters: - - name: fields - in: query - type: string - description: Limits which fields of upstream server groups will be output. - If the “fields” value is empty, - only names of upstreams will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxHTTPUpstreamMap' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '/http/upstreams/{httpUpstreamName}/': - parameters: - - name: httpUpstreamName - in: path - description: The name of an HTTP upstream server group. - required: true - type: string - get: - tags: - - HTTP Upstreams - - Method GET - summary: Return status of an HTTP upstream server group - description: Returns status of a particular HTTP upstream server group - and its servers. - operationId: getHttpUpstreamName - produces: - - application/json - parameters: - - name: fields - in: query - type: string - description: Limits which fields of the upstream server group will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxHTTPUpstream' - '400': - description: Upstream is static (*UpstreamStatic*) - schema: - $ref: '#/definitions/NginxError' - '404': - description: | - Unknown version (*UnknownVersion*), - upstream not found (*UpstreamNotFound*) - schema: - $ref: '#/definitions/NginxError' - delete: - tags: - - HTTP Upstreams - - Method DELETE - summary: Reset statistics of an HTTP upstream server group - description: Resets the statistics for each upstream server - in an upstream server group and queue statistics. - operationId: deleteHttpUpstreamStat - produces: - - application/json - responses: - '204': - description: Success - '400': - description: Upstream is static (*UpstreamStatic*) - schema: - $ref: '#/definitions/NginxError' - '404': - description: | - Unknown version (*UnknownVersion*), - upstream not found (*UpstreamNotFound*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - '/http/upstreams/{httpUpstreamName}/servers/': - parameters: - - name: httpUpstreamName - in: path - description: The name of an upstream server group. - required: true - type: string - get: - tags: - - HTTP Upstreams - - Method GET - summary: Return configuration of all servers in an HTTP upstream server group - description: Returns configuration of each server - in a particular HTTP upstream server group. - operationId: getHttpUpstreamServers - produces: - - application/json - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxHTTPUpstreamConfServerMap' - '400': - description: Upstream is static (*UpstreamStatic*) - schema: - $ref: '#/definitions/NginxError' - '404': - description: | - Unknown version (*UnknownVersion*), - upstream not found (*UpstreamNotFound*) - schema: - $ref: '#/definitions/NginxError' - post: - tags: - - HTTP Upstreams - - Method POST - summary: Add a server to an HTTP upstream server group - description: Adds a new server to an HTTP upstream server group. - Server parameters are specified in the JSON format. - operationId: postHttpUpstreamServer - produces: - - application/json - parameters: - - in: body - name: postHttpUpstreamServer - description: Address of a new server and other optional parameters - in the JSON format. - The “*ID*”, “*backup*”, and “*service*” parameters - cannot be changed. - required: true - schema: - $ref: '#/definitions/NginxHTTPUpstreamConfServer' - responses: - '201': - description: Created - schema: - $ref: '#/definitions/NginxHTTPUpstreamConfServer' - '400': - description: | - 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*), - reading request body failed *BodyReadError*), - 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*) - schema: - $ref: '#/definitions/NginxError' - '404': - description: | - Unknown version (*UnknownVersion*), - upstream not found (*UpstreamNotFound*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - '409': - description: Entry exists (*EntryExists*) - schema: - $ref: '#/definitions/NginxError' - '415': - description: JSON error (*JsonError*) - schema: - $ref: '#/definitions/NginxError' - '/http/upstreams/{httpUpstreamName}/servers/{httpUpstreamServerId}': - parameters: - - name: httpUpstreamName - in: path - description: The name of the upstream server group. - required: true - type: string - - name: httpUpstreamServerId - in: path - description: The ID of the server. - required: true - type: string - get: - tags: - - HTTP Upstreams - - Method GET - summary: Return configuration of a server in an HTTP upstream server group - description: Returns configuration of a particular server - in the HTTP upstream server group. - operationId: getHttpUpstreamPeer - produces: - - application/json - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxHTTPUpstreamConfServer' - '400': - description: | - Upstream is static (*UpstreamStatic*), - invalid server ID (*UpstreamBadServerId*) - schema: - $ref: '#/definitions/NginxError' - '404': - description: | - Server with ID “**id**” does not exist (*UpstreamServerNotFound*), - unknown version (*UnknownVersion*), - upstream not found (*UpstreamNotFound*) - schema: - $ref: '#/definitions/NginxError' - patch: - tags: - - HTTP Upstreams - - Method PATCH - summary: Modify a server in an HTTP upstream server group - description: Modifies settings of a particular server - in an HTTP upstream server group. - Server parameters are specified in the JSON format. - operationId: patchHttpUpstreamPeer - produces: - - application/json - parameters: - - in: body - name: patchHttpUpstreamServer - description: Server parameters, specified in the JSON format. - The “*ID*”, “*backup*”, and “*service*” parameters - cannot be changed. - required: true - schema: - $ref: '#/definitions/NginxHTTPUpstreamConfServer' - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxHTTPUpstreamConfServer' - '400': - description: | - 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*), - reading request body failed *BodyReadError*), - 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*) - schema: - $ref: '#/definitions/NginxError' - '404': - description: | - Server with ID “**id**” does not exist (*UpstreamServerNotFound*), - unknown version (*UnknownVersion*), - upstream not found (*UpstreamNotFound*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - '415': - description: JSON error (*JsonError*) - schema: - $ref: '#/definitions/NginxError' - delete: - tags: - - HTTP Upstreams - - Method DELETE - summary: Remove a server from an HTTP upstream server group - description: Removes a server from an HTTP upstream server group. - operationId: deleteHttpUpstreamServer - produces: - - application/json - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxHTTPUpstreamConfServerMap' - '400': - description: | - Upstream is static (*UpstreamStatic*), - invalid server ID (*UpstreamBadServerId*), - server “**id**” not removable (*UpstreamServerImmutable*) - schema: - $ref: '#/definitions/NginxError' - '404': - description: | - Server with ID “**id**” does not exist (*UpstreamServerNotFound*), - unknown version (*UnknownVersion*), - upstream not found (*UpstreamNotFound*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - /http/keyvals/: - get: - tags: - - HTTP Keyvals - - Method GET - summary: Return key-value pairs from all HTTP keyval zones - description: Returns key-value pairs for each HTTP keyval shared memory - [zone](https://nginx.org/en/docs/http/ngx_http_keyval_module.html#keyval_zone). - operationId: getHttpKeyvalZones - produces: - - application/json - parameters: - - name: fields - in: query - type: string - description: If the “fields” value is empty, - then only HTTP keyval zone names will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxHTTPKeyvalZonesMap' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '/http/keyvals/{httpKeyvalZoneName}': - parameters: - - name: httpKeyvalZoneName - in: path - description: The name of an HTTP keyval shared memory zone. - required: true - type: string - get: - tags: - - HTTP Keyvals - - Method GET - summary: Return key-value pairs from an HTTP keyval zone - description: Returns key-value pairs stored in a particular HTTP keyval shared memory - [zone](https://nginx.org/en/docs/http/ngx_http_keyval_module.html#keyval_zone). - operationId: getHttpKeyvalZoneKeysValues - produces: - - application/json - parameters: - - name: key - in: query - type: string - description: Get a particular key-value pair from the HTTP keyval zone. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxHTTPKeyvalZone' - '404': - description: | - Keyval not found (*KeyvalNotFound*), - keyval key not found (*KeyvalKeyNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - post: - tags: - - HTTP Keyvals - - Method POST - summary: Add a key-value pair to the HTTP keyval zone - description: Adds a new key-value pair to the HTTP keyval shared memory - [zone](https://nginx.org/en/docs/http/ngx_http_keyval_module.html#keyval_zone). - Several key-value pairs can be entered - if the HTTP keyval shared memory zone is empty. - operationId: postHttpKeyvalZoneData - produces: - - application/json - parameters: - - in: body - name: Key-value - description: A key-value pair is specified in the JSON format. - Several key-value pairs can be entered - if the HTTP keyval shared memory zone is empty. - Expiration time in milliseconds can be specified for a key-value pair - with the *expire* parameter - which overrides the [*timeout*](https://nginx.org/en/docs/http/ngx_http_keyval_module.html#keyval_timeout) - parameter of the - keyval_zone - directive. - required: true - schema: - $ref: '#/definitions/NginxHTTPKeyvalZonePostPatch' - responses: - '201': - description: Created - '400': - description: | - Invalid JSON (*KeyvalFormatError*), - invalid key format (*KeyvalFormatError*), - key required (*KeyvalFormatError*), - keyval timeout is not enabled (*KeyvalFormatError*), - only one key can be added (*KeyvalFormatError*), - reading request body failed *BodyReadError*) - schema: - $ref: '#/definitions/NginxError' - '404': - description: | - Keyval not found (*KeyvalNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - '409': - description: | - Entry exists (*EntryExists*), - key already exists (*KeyvalKeyExists*) - schema: - $ref: '#/definitions/NginxError' - '413': - description: Request Entity Too Large - schema: - $ref: '#/definitions/NginxError' - '415': - description: JSON error (*JsonError*) - schema: - $ref: '#/definitions/NginxError' - patch: - tags: - - HTTP Keyvals - - Method PATCH - summary: Modify a key-value or delete a key - description: Changes the value of the selected key in the key-value pair, - deletes a key by setting the key value to null, - changes expiration time of a key-value pair. - If - synchronization - of keyval zones in a cluster is enabled, - deletes a key only on a target cluster node. - Expiration time in milliseconds can be specified for a key-value pair - with the *expire* parameter - which overrides the [*timeout*](https://nginx.org/en/docs/http/ngx_http_keyval_module.html#keyval_timeout) - parameter of the - keyval_zone - directive. - operationId: patchHttpKeyvalZoneKeyValue - produces: - - application/json - parameters: - - in: body - name: httpKeyvalZoneKeyValue - description: A new value for the key is specified in the JSON format. - required: true - schema: - $ref: '#/definitions/NginxHTTPKeyvalZonePostPatch' - responses: - '204': - description: Success - '400': - description: | - Invalid JSON (*KeyvalFormatError*), - key required (*KeyvalFormatError*), - keyval timeout is not enabled (*KeyvalFormatError*), - only one key can be updated (*KeyvalFormatError*), - reading request body failed *BodyReadError*) - schema: - $ref: '#/definitions/NginxError' - '404': - description: | - Keyval not found (*KeyvalNotFound*), - keyval key not found (*KeyvalKeyNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - '413': - description: Request Entity Too Large - schema: - $ref: '#/definitions/NginxError' - '415': - description: JSON error (*JsonError*) - schema: - $ref: '#/definitions/NginxError' - delete: - tags: - - HTTP Keyvals - - Method DELETE - summary: Empty the HTTP keyval zone - description: Deletes all key-value pairs from the HTTP keyval shared memory - [zone](https://nginx.org/en/docs/http/ngx_http_keyval_module.html#keyval_zone). - If - synchronization - of keyval zones in a cluster is enabled, - empties the keyval zone only on a target cluster node. - operationId: deleteHttpKeyvalZoneData - responses: - '204': - description: Success - '404': - description: | - Keyval not found (*KeyvalNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - /stream/: - get: - tags: - - Stream - summary: Return list of stream-related endpoints - description: Returns a list of first level stream endpoints. - operationId: getStream - produces: - - application/json - responses: - '200': - description: Success - schema: - $ref: '#/definitions/ArrayOfStrings' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - /stream/server_zones/: - get: - tags: - - Stream Server Zones - - Method GET - summary: Return status of all stream server zones - description: Returns status information for each stream - [server zone](https://nginx.org/en/docs/http/ngx_http_api_module.html#status_zone). - operationId: getStreamServerZones - produces: - - application/json - parameters: - - name: fields - in: query - type: string - description: Limits which fields of server zones will be output. - If the “fields” value is empty, - then only server zone names will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxStreamServerZonesMap' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '/stream/server_zones/{streamServerZoneName}': - parameters: - - name: streamServerZoneName - in: path - description: The name of a stream server zone. - type: string - required: true - get: - tags: - - Stream Server Zones - - Method GET - summary: Return status of a stream server zone - description: Returns status of a particular stream server zone. - operationId: getStreamServerZone - produces: - - application/json - parameters: - - name: fields - in: query - type: string - description: Limits which fields of the server zone will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxStreamServerZone' - '404': - description: | - Server zone not found (*ServerZoneNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - delete: - tags: - - Stream Server Zones - - Method DELETE - summary: Reset statistics for a stream server zone - description: Resets statistics of accepted and discarded connections, sessions, - received and sent bytes, counters of SSL handshakes and session reuses - in a particular stream server zone. - operationId: deleteStreamServerZoneStat - responses: - '204': - description: Success - '404': - description: | - Server zone not found (*ServerZoneNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - /stream/limit_conns/: - get: - tags: - - Stream Limit Conns - - Method GET - summary: Return status of all stream limit_conn zones - description: Returns status information for each stream - [limit_conn zone](https://nginx.org/en/docs/stream/ngx_stream_limit_conn_module.html#limit_conn_zone). - operationId: getStreamLimitConnZones - produces: - - application/json - parameters: - - in: query - name: fields - type: string - description: Limits which fields of limit_conn zones will be output. - If the “fields” value is empty, - then only zone names will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxStreamLimitConnZonesMap' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '/stream/limit_conns/{streamLimitConnZoneName}': - parameters: - - name: streamLimitConnZoneName - in: path - description: The name of a - [limit_conn zone](https://nginx.org/en/docs/stream/ngx_stream_limit_conn_module.html#limit_conn_zone). - type: string - required: true - get: - tags: - - Stream Limit Conns - - Method GET - summary: Return status of an stream limit_conn zone - description: Returns status of a particular stream - [limit_conn zone](https://nginx.org/en/docs/stream/ngx_stream_limit_conn_module.html#limit_conn_zone). - operationId: getStreamLimitConnZone - produces: - - application/json - parameters: - - name: fields - in: query - type: string - description: Limits which fields of the - [limit_conn zone](https://nginx.org/en/docs/stream/ngx_stream_limit_conn_module.html#limit_conn_zone) - will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxStreamLimitConnZone' - '404': - description: | - limit_conn not found (*LimitConnNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - delete: - tags: - - Stream Limit Conns - - Method DELETE - summary: Reset statistics for a stream limit_conn zone - description: Resets the connection limiting statistics. - operationId: deleteStreamLimitConnZoneStat - responses: - '204': - description: Success - '404': - description: | - limit_conn not found (*LimitConnNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - /stream/upstreams/: - get: - tags: - - Stream Upstreams - - Method GET - summary: Return status of all stream upstream server groups - description: Returns status of each stream upstream server group - and its servers. - operationId: getStreamUpstreams - produces: - - application/json - parameters: - - name: fields - in: query - type: string - description: Limits which fields of upstream server groups will be output. - If the “fields” value is empty, - only names of upstreams will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxStreamUpstreamMap' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '/stream/upstreams/{streamUpstreamName}/': - parameters: - - name: streamUpstreamName - in: path - description: The name of a stream upstream server group. - required: true - type: string - get: - tags: - - Stream Upstreams - - Method GET - summary: Return status of a stream upstream server group - description: Returns status of a particular stream upstream server group - and its servers. - operationId: getStreamUpstream - produces: - - application/json - parameters: - - name: fields - in: query - type: string - description: Limits which fields of the upstream server group will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxStreamUpstream' - '400': - description: Upstream is static (*UpstreamStatic*) - schema: - $ref: '#/definitions/NginxError' - '404': - description: | - Unknown version (*UnknownVersion*), - upstream not found (*UpstreamNotFound*) - schema: - $ref: '#/definitions/NginxError' - delete: - tags: - - Stream Upstreams - - Method DELETE - summary: Reset statistics of a stream upstream server group - description: Resets the statistics for each upstream server - in an upstream server group. - operationId: deleteStreamUpstreamStat - produces: - - application/json - responses: - '204': - description: Success - '400': - description: Upstream is static (*UpstreamStatic*) - schema: - $ref: '#/definitions/NginxError' - '404': - description: | - Unknown version (*UnknownVersion*), - upstream not found (*UpstreamNotFound*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - '/stream/upstreams/{streamUpstreamName}/servers/': - parameters: - - name: streamUpstreamName - in: path - description: The name of an upstream server group. - required: true - type: string - get: - tags: - - Stream Upstreams - - Method GET - summary: Return configuration of all servers in a stream upstream server group - description: Returns configuration of each server - in a particular stream upstream server group. - operationId: getStreamUpstreamServers - produces: - - application/json - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxStreamUpstreamConfServerMap' - '400': - description: Upstream is static (*UpstreamStatic*) - schema: - $ref: '#/definitions/NginxError' - '404': - description: | - Unknown version (*UnknownVersion*), - upstream not found (*UpstreamNotFound*) - schema: - $ref: '#/definitions/NginxError' - post: - tags: - - Stream Upstreams - - Method POST - summary: Add a server to a stream upstream server group - description: Adds a new server to a stream upstream server group. - Server parameters are specified in the JSON format. - operationId: postStreamUpstreamServer - produces: - - application/json - parameters: - - in: body - name: postStreamUpstreamServer - description: Address of a new server and other optional parameters - in the JSON format. - The “*ID*”, “*backup*”, and “*service*” parameters - cannot be changed. - required: true - schema: - $ref: '#/definitions/NginxStreamUpstreamConfServer' - responses: - '201': - description: Created - schema: - $ref: '#/definitions/NginxStreamUpstreamConfServer' - '400': - description: | - 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*), - reading request body failed *BodyReadError*) - schema: - $ref: '#/definitions/NginxError' - '404': - description: | - Unknown version (*UnknownVersion*), - upstream not found (*UpstreamNotFound*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - '409': - description: Entry exists (*EntryExists*) - schema: - $ref: '#/definitions/NginxError' - '415': - description: JSON error (*JsonError*) - schema: - $ref: '#/definitions/NginxError' - '/stream/upstreams/{streamUpstreamName}/servers/{streamUpstreamServerId}': - parameters: - - name: streamUpstreamName - in: path - description: The name of the upstream server group. - required: true - type: string - - name: streamUpstreamServerId - in: path - description: The ID of the server. - required: true - type: string - get: - tags: - - Stream Upstreams - - Method GET - summary: Return configuration of a server in a stream upstream server group - description: Returns configuration of a particular server - in the stream upstream server group. - operationId: getStreamUpstreamServer - produces: - - application/json - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxStreamUpstreamConfServer' - '400': - description: | - Upstream is static (*UpstreamStatic*), - invalid server ID (*UpstreamBadServerId*) - schema: - $ref: '#/definitions/NginxError' - '404': - description: | - Unknown version (*UnknownVersion*), - upstream not found (*UpstreamNotFound*), - server with ID “**id**” does not exist (*UpstreamServerNotFound*) - schema: - $ref: '#/definitions/NginxError' - patch: - tags: - - Stream Upstreams - - Method PATCH - summary: Modify a server in a stream upstream server group - description: Modifies settings of a particular server - in a stream upstream server group. - Server parameters are specified in the JSON format. - operationId: patchStreamUpstreamServer - produces: - - application/json - parameters: - - in: body - name: patchStreamUpstreamServer - description: Server parameters, specified in the JSON format. - The “*ID*”, “*backup*”, and “*service*” parameters - cannot be changed. - required: true - schema: - $ref: '#/definitions/NginxStreamUpstreamConfServer' - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxStreamUpstreamConfServer' - '400': - description: | - 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*), - reading request body failed *BodyReadError*), - “*service*” is empty (*UpstreamBadService*), - server “**ID**” address is immutable (*UpstreamServerImmutable*), - server “**ID**” weight is immutable (*UpstreamServerWeightImmutable*), - upstream “*name*” memory exhausted (*UpstreamOutOfMemory*) - schema: - $ref: '#/definitions/NginxError' - '404': - description: | - Server with ID “**id**” does not exist (*UpstreamServerNotFound*), - unknown version (*UnknownVersion*), - upstream not found (*UpstreamNotFound*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - '415': - description: JSON error (*JsonError*) - schema: - $ref: '#/definitions/NginxError' - delete: - tags: - - Stream Upstreams - - Method DELETE - summary: Remove a server from a stream upstream server group - description: Removes a server from a stream server group. - operationId: deleteStreamUpstreamServer - produces: - - application/json - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxStreamUpstreamConfServerMap' - '400': - description: | - Upstream is static (*UpstreamStatic*), - invalid server ID (*UpstreamBadServerId*), - server “**id**” not removable (*UpstreamServerImmutable*) - schema: - $ref: '#/definitions/NginxError' - '404': - description: | - Server with ID “**id**” does not exist (*UpstreamServerNotFound*), - unknown version (*UnknownVersion*), - upstream not found (*UpstreamNotFound*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - /stream/keyvals/: - get: - tags: - - Stream Keyvals - - Method GET - summary: Return key-value pairs from all stream keyval zones - description: Returns key-value pairs for each stream keyval shared memory - [zone](https://nginx.org/en/docs/stream/ngx_stream_keyval_module.html#keyval_zone). - operationId: getStreamKeyvalZones - produces: - - application/json - parameters: - - name: fields - in: query - type: string - description: If the “fields” value is empty, - then only stream keyval zone names will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxStreamKeyvalZonesMap' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '/stream/keyvals/{streamKeyvalZoneName}': - parameters: - - name: streamKeyvalZoneName - in: path - description: The name of a stream keyval shared memory zone. - required: true - type: string - get: - tags: - - Stream Keyvals - - Method GET - summary: Return key-value pairs from a stream keyval zone - description: Returns key-value pairs stored in a particular stream keyval shared memory - [zone](https://nginx.org/en/docs/stream/ngx_stream_keyval_module.html#keyval_zone). - operationId: getStreamKeyvalZoneKeysValues - produces: - - application/json - parameters: - - name: key - in: query - type: string - description: Get a particular key-value pair from the stream keyval zone. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxStreamKeyvalZone' - '404': - description: | - Keyval not found (*KeyvalNotFound*), - keyval key not found (*KeyvalKeyNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - post: - tags: - - Stream Keyvals - - Method POST - summary: Add a key-value pair to the stream keyval zone - description: Adds a new key-value pair to the stream keyval shared memory - [zone](https://nginx.org/en/docs/stream/ngx_stream_keyval_module.html#keyval_zone). - Several key-value pairs can be entered - if the stream keyval shared memory zone is empty. - operationId: postStreamKeyvalZoneData - produces: - - application/json - parameters: - - in: body - name: Key-value - description: A key-value pair is specified in the JSON format. - Several key-value pairs can be entered - if the stream keyval shared memory zone is empty. - Expiration time in milliseconds can be specified for a key-value pair - with the *expire* parameter - which overrides the [*timeout*](https://nginx.org/en/docs/stream/ngx_stream_keyval_module.html#keyval_timeout) - parameter of the - keyval_zone - directive. - required: true - schema: - $ref: '#/definitions/NginxStreamKeyvalZonePostPatch' - responses: - '201': - description: Created - '400': - description: | - Invalid JSON (*KeyvalFormatError*), - invalid key format (*KeyvalFormatError*), - key required (*KeyvalFormatError*), - keyval timeout is not enabled (*KeyvalFormatError*), - only one key can be added (*KeyvalFormatError*), - reading request body failed *BodyReadError*) - schema: - $ref: '#/definitions/NginxError' - '404': - description: | - Keyval not found (*KeyvalNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - '409': - description: | - Entry exists (*EntryExists*), - key already exists (*KeyvalKeyExists*) - schema: - $ref: '#/definitions/NginxError' - '413': - description: Request Entity Too Large - schema: - $ref: '#/definitions/NginxError' - '415': - description: JSON error (*JsonError*) - schema: - $ref: '#/definitions/NginxError' - patch: - tags: - - Stream Keyvals - - Method PATCH - summary: Modify a key-value or delete a key - description: Changes the value of the selected key in the key-value pair, - deletes a key by setting the key value to null, - changes expiration time of a key-value pair. - If - synchronization - of keyval zones in a cluster is enabled, - deletes a key only on a target cluster node. - Expiration time is specified in milliseconds - with the *expire* parameter - which overrides the [*timeout*](https://nginx.org/en/docs/stream/ngx_stream_keyval_module.html#keyval_timeout) - parameter of the - keyval_zone - directive. - operationId: patchStreamKeyvalZoneKeyValue - produces: - - application/json - parameters: - - in: body - name: streamKeyvalZoneKeyValue - description: A new value for the key is specified in the JSON format. - required: true - schema: - $ref: '#/definitions/NginxStreamKeyvalZonePostPatch' - responses: - '204': - description: Success - '400': - description: | - Invalid JSON (*KeyvalFormatError*), - key required (*KeyvalFormatError*), - keyval timeout is not enabled (*KeyvalFormatError*), - only one key can be updated (*KeyvalFormatError*), - reading request body failed *BodyReadError*) - schema: - $ref: '#/definitions/NginxError' - '404': - description: | - Keyval not found (*KeyvalNotFound*), - keyval key not found (*KeyvalKeyNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - '413': - description: Request Entity Too Large - schema: - $ref: '#/definitions/NginxError' - '415': - description: JSON error (*JsonError*) - schema: - $ref: '#/definitions/NginxError' - delete: - tags: - - Stream Keyvals - - Method DELETE - summary: Empty the stream keyval zone - description: Deletes all key-value pairs from the stream keyval shared memory - [zone](https://nginx.org/en/docs/stream/ngx_stream_keyval_module.html#keyval_zone). - If - synchronization - of keyval zones in a cluster is enabled, - empties the keyval zone only on a target cluster node. - operationId: deleteStreamKeyvalZoneData - responses: - '204': - description: Success - '404': - description: | - Keyval not found (*KeyvalNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - /stream/zone_sync/: - get: - tags: - - Stream Zone Sync - - Method GET - summary: Return sync status of a node - description: Returns synchronization status of a cluster node. - operationId: getStreamZoneSync - produces: - - application/json - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxStreamZoneSync' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - /resolvers/: - get: - tags: - - Resolvers - - Method GET - summary: Return status for all resolver zones - description: Returns status information for each - [resolver zone](https://nginx.org/en/docs/http/ngx_http_core_module.html#resolver_status_zone). - operationId: getResolverZones - produces: - - application/json - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxResolverZonesMap' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - parameters: - - in: query - name: fields - type: string - description: Limits which fields of resolvers statistics will be output. - '/resolvers/{resolverZoneName}': - parameters: - - name: resolverZoneName - in: path - description: The name of a resolver zone. - required: true - type: string - get: - tags: - - Resolvers - - Method GET - summary: Return statistics of a resolver zone - description: Returns statistics stored in a particular resolver - [zone](https://nginx.org/en/docs/http/ngx_http_core_module.html#resolver_status_zone). - operationId: getResolverZone - produces: - - application/json - parameters: - - name: fields - in: query - type: string - description: Limits which fields of the resolver zone will be output - (requests, responses, or both). - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxResolverZone' - '404': - description: | - Resolver zone not found (*ResolverZoneNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - delete: - tags: - - Resolvers - - Method DELETE - summary: Reset statistics for a resolver zone. - description: Resets statistics in a particular resolver zone. - operationId: deleteResolverZoneStat - responses: - '204': - description: Success - '404': - description: | - Resolver zone not found (*ResolverZoneNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - /ssl: - get: - tags: - - SSL - - Method GET - summary: Return SSL statistics - description: Returns SSL statistics. - operationId: getSsl - produces: - - application/json - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxSSLObject' - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - parameters: - - in: query - name: fields - type: string - description: Limits which fields of SSL statistics will be output. - delete: - tags: - - SSL - - Method DELETE - summary: Reset SSL statistics - description: Resets counters of SSL handshakes and session reuses. - operationId: deleteSslStat - responses: - '204': - description: Success - '404': - description: Unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - /workers/: - get: - tags: - - Workers - - Method GET - summary: Return statistics for all worker processes - description: Returns statistics for all worker processes such as accepted, dropped, active, idle connections, total and current requests. - operationId: getWorkers - produces: - - application/json - parameters: - - in: query - name: fields - type: string - description: Limits which fields of worker process statistics will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxWorkersMap' - '404': - description: | - Worker not found (*WorkerNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - delete: - tags: - - Workers - - Method DELETE - summary: Reset statistics for all worker processes. - description: | - Resets statistics for all worker processes such as - accepted, dropped, active, idle connections, total and current requests. - operationId: deleteWorkersStat - produces: - - application/json - responses: - '204': - description: Success - '404': - description: | - Worker not found (*WorkerNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' - '/workers/{workerId}': - parameters: - - name: workerId - in: path - description: The ID of the worker process. - required: true - type: string - get: - tags: - - Workers - - Method GET - summary: Return status of a worker process - description: Returns status of a particular worker process. - operationId: getWorker - produces: - - application/json - parameters: - - in: query - name: fields - type: string - description: Limits which fields of worker process statistics will be output. - responses: - '200': - description: Success - schema: - $ref: '#/definitions/NginxWorker' - '404': - description: | - Worker not found (*WorkerNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - delete: - tags: - - Workers - - Method DELETE - summary: Reset statistics for a worker process. - description: | - Resets statistics of accepted, dropped, active, idle connections, - as well as total and current requests. - operationId: deleteWorkerStat - produces: - - application/json - responses: - '204': - description: Success - '404': - description: | - Worker not found (*WorkerNotFound*), - unknown version (*UnknownVersion*) - schema: - $ref: '#/definitions/NginxError' - '405': - description: Method disabled (*MethodDisabled*) - schema: - $ref: '#/definitions/NginxError' -### -###DEFINITIONS -### -definitions: - ArrayOfStrings: - title: Array - description: | - An array of strings. - type: array - items: - type: string - NginxObject: - title: nginx - description: | - General information about nginx: - type: object - properties: - version: - type: string - description: Version of nginx. - build: - type: string - description: Name of nginx build. - address: - type: string - description: The address of the server that accepted status request. - generation: - type: integer - description: The total number of configuration - reloads. - load_timestamp: - type: string - format: date-time - description: Time of the last reload of configuration, - in the ISO 8601 format with millisecond resolution. - timestamp: - type: string - format: date-time - description: Current time - in the ISO 8601 format with millisecond resolution. - pid: - type: integer - description: The ID of the worker process that handled status request. - ppid: - type: integer - description: The ID of the master process that started the - worker process. - example: - nginx: - version: 1.21.6 - build: nginx-plus-r27 - address: 206.251.255.64 - generation: 6 - load_timestamp: 2022-06-28T11:15:44.467Z - timestamp: 2022-06-28T09:26:07.305Z - pid: 32212 - ppid: 32210 - NginxProcesses: - title: Processes - type: object - properties: - respawned: - type: integer - description: The total number of abnormally terminated - and respawned child processes. - example: - respawned: 0 - NginxConnections: - title: Connections - description: | - The number of accepted, dropped, active, and idle connections. - type: object - properties: - accepted: - type: integer - description: The total number of accepted client connections. - dropped: - type: integer - description: The total number of dropped client connections. - active: - type: integer - description: The current number of active client connections. - idle: - type: integer - description: The current number of idle client connections. - example: - accepted: 4968119 - dropped: 0 - active: 5 - idle: 117 - NginxSSLObject: - title: SSL - type: object - properties: - handshakes: - type: integer - description: The total number of successful SSL handshakes. - handshakes_failed: - type: integer - description: The total number of failed SSL handshakes. - session_reuses: - type: integer - description: The total number of session reuses during SSL handshake. - no_common_protocol: - type: integer - description: The number of SSL handshakes failed - because of no common protocol. - no_common_cipher: - type: integer - description: The number of SSL handshakes failed - because of no shared cipher. - handshake_timeout: - type: integer - description: The number of SSL handshakes failed - because of a timeout. - peer_rejected_cert: - type: integer - description: The number of failed SSL handshakes - when nginx presented the certificate to the client - but it was rejected with a corresponding alert message. - verify_failures: - type: object - description: SSL certificate verification errors - properties: - no_cert: - type: integer - description: A client did not provide the required certificate. - expired_cert: - type: integer - description: An expired or not yet valid certificate - was presented by a client. - revoked_cert: - type: integer - description: A revoked certificate was presented by a client. - hostname_mismatch: - type: integer - description: Server's certificate doesn't match the hostname. - other: - type: integer - description: Other SSL certificate verification errors. - example: - handshakes: 79572 - handshakes_failed: 21025 - session_reuses: 15762 - no_common_protocol: 4 - no_common_cipher: 2 - handshake_timeout: 0 - peer_rejected_cert: 0 - verify_failures: - no_cert: 0 - expired_cert: 2 - revoked_cert: 1 - hostname_mismatch: 2 - other: 1 - NginxSlabZoneMap: - title: Slab Zones - description: | - Status zones that use slab allocator. - type: object - additionalProperties: - $ref: '#/definitions/NginxSlabZone' - example: - http_cache: - pages: - used: 2 - free: 2452 - slots: - 8: - used: 0 - free: 0 - reqs: 0 - fails: 0 - 16: - used: 0 - free: 0 - reqs: 0 - fails: 0 - 32: - used: 1 - free: 126 - reqs: 1 - fails: 0 - 64: - used: 2 - free: 62 - reqs: 2 - fails: 0 - 128: - used: 0 - free: 0 - reqs: 0 - fails: 0 - dns-backends: - pages: - used: 1143 - free: 2928 - slots: - 8: - used: 0 - free: 0 - reqs: 0 - fails: 0 - 16: - used: 0 - free: 0 - reqs: 0 - fails: 0 - 32: - used: 0 - free: 0 - reqs: 0 - fails: 0 - 64: - used: 1 - free: 63 - reqs: 1 - fails: 0 - 128: - used: 0 - free: 0 - reqs: 0 - fails: 0 - 256: - used: 18078 - free: 178 - reqs: 1635736 - fails: 0 - NginxSlabZone: - title: Shared memory zone with slab allocator - description: | - Shared memory zone with slab allocator - type: object - properties: - pages: - type: object - description: The number of free and used memory pages. - properties: - used: - type: integer - description: The current number of used memory pages. - free: - type: integer - description: The current number of free memory pages. - slots: - type: object - title: Memory Slots - description: Status data for memory slots (8, 16, 32, 64, 128, etc.) - additionalProperties: - $ref: '#/definitions/NginxSlabZoneSlot' - example: - pages: - used: 1143 - free: 2928 - slots: - 8: - used: 0 - free: 0 - reqs: 0 - fails: 0 - 16: - used: 0 - free: 0 - reqs: 0 - fails: 0 - 32: - used: 0 - free: 0 - reqs: 0 - fails: 0 - 64: - used: 1 - free: 63 - reqs: 1 - fails: 0 - 128: - used: 0 - free: 0 - reqs: 0 - fails: 0 - 256: - used: 18078 - free: 178 - reqs: 1635736 - fails: 0 - NginxSlabZoneSlot: - title: Memory Slot - type: object - properties: - used: - type: integer - description: The current number of used memory slots. - free: - type: integer - description: The current number of free memory slots. - reqs: - type: integer - description: The total number of attempts - to allocate memory of specified size. - fails: - type: integer - description: The number of unsuccessful attempts - to allocate memory of specified size. - NginxHTTPRequests: - title: HTTP Requests - type: object - properties: - total: - type: integer - description: The total number of client requests. - current: - type: integer - description: The current number of client requests. - example: - total: 10624511 - current: 4 - NginxHTTPServerZonesMap: - title: HTTP Server Zones - description: | - Status data for all HTTP - status zones. - type: object - additionalProperties: - $ref: '#/definitions/NginxHTTPServerZone' - example: - site1: - processing: 2 - requests: 736395 - responses: - 1xx: 0 - 2xx: 727290 - 3xx: 4614 - 4xx: 934 - 5xx: 1535 - codes: - 200: 727270 - 301: 4614 - 404: 930 - 503: 1535 - total: 734373 - discarded: 2020 - received: 180157219 - sent: 20183175459 - ssl: - handshakes: 65432 - handshakes_failed: 421 - session_reuses: 4645 - no_common_protocol: 4 - no_common_cipher: 2 - handshake_timeout: 0 - peer_rejected_cert: 0 - verify_failures: - no_cert: 0 - expired_cert: 2 - revoked_cert: 1 - hostname_mismatch: 2 - other: 1 - site2: - processing: 1 - requests: 185307 - responses: - 1xx: 0 - 2xx: 112674 - 3xx: 45383 - 4xx: 2504 - 5xx: 4419 - codes: - 200: 112674 - 301: 45383 - 404: 2504 - 503: 4419 - total: 164980 - discarded: 20326 - received: 51575327 - sent: 2983241510 - ssl: - handshakes: 104303 - handshakes_failed: 1421 - session_reuses: 54645 - no_common_protocol: 4 - no_common_cipher: 2 - handshake_timeout: 0 - peer_rejected_cert: 0 - verify_failures: - no_cert: 0 - expired_cert: 2 - revoked_cert: 1 - hostname_mismatch: 2 - other: 1 - NginxHTTPServerZone: - title: HTTP Server Zone - type: object - properties: - processing: - type: integer - description: The number of client requests - that are currently being processed. - requests: - type: integer - description: The total number of client requests received from clients. - responses: - description: The total number of responses sent to clients, the - number of responses with status codes - “1xx”, “2xx”, “3xx”, - “4xx”, and “5xx”, and - the number of responses per each status code. - type: object - readOnly: true - properties: - 1xx: - type: integer - description: The number of responses with “1xx” status codes. - readOnly: true - 2xx: - type: integer - description: The number of responses with “2xx” status codes. - readOnly: true - 3xx: - type: integer - description: The number of responses with “3xx” status codes. - readOnly: true - 4xx: - type: integer - description: The number of responses with “4xx” status codes. - readOnly: true - 5xx: - type: integer - description: The number of responses with “5xx” status codes. - readOnly: true - codes: - type: object - description: The number of responses per each status code. - readOnly: true - properties: - codeNumber: - type: integer - description: The number of responses with this particular status code. - readOnly: true - total: - type: integer - description: The total number of responses sent to clients. - readOnly: true - discarded: - type: integer - description: The total number of - requests completed without sending a response. - received: - type: integer - description: The total number of bytes received from clients. - sent: - type: integer - description: The total number of bytes sent to clients. - ssl: - type: object - readOnly: true - properties: - handshakes: - type: integer - description: The total number of successful SSL handshakes. - readOnly: true - handshakes_failed: - type: integer - description: The total number of failed SSL handshakes. - readOnly: true - session_reuses: - type: integer - description: The total number of session reuses during SSL handshake. - readOnly: true - no_common_protocol: - type: integer - description: The number of SSL handshakes failed - because of no common protocol. - no_common_cipher: - type: integer - description: The number of SSL handshakes failed - because of no shared cipher. - handshake_timeout: - type: integer - description: The number of SSL handshakes failed - because of a timeout. - peer_rejected_cert: - type: integer - description: The number of failed SSL handshakes - when nginx presented the certificate to the client - but it was rejected with a corresponding alert message. - verify_failures: - type: object - description: SSL certificate verification errors - properties: - no_cert: - type: integer - description: A client did not provide the required certificate. - expired_cert: - type: integer - description: An expired or not yet valid certificate - was presented by a client. - revoked_cert: - type: integer - description: A revoked certificate was presented by a client. - other: - type: integer - description: Other SSL certificate verification errors. - example: - processing: 1 - requests: 706690 - responses: - 1xx: 0 - 2xx: 699482 - 3xx: 4522 - 4xx: 907 - 5xx: 266 - codes: - 200: 699482 - 301: 4522 - 404: 907 - 503: 266 - total: 705177 - discarded: 1513 - received: 172711587 - sent: 19415530115 - ssl: - handshakes: 104303 - handshakes_failed: 1421 - session_reuses: 54645 - no_common_protocol: 4 - no_common_cipher: 2 - handshake_timeout: 0 - peer_rejected_cert: 0 - verify_failures: - no_cert: 0 - expired_cert: 2 - revoked_cert: 1 - other: 1 - NginxHTTPLocationZonesMap: - title: HTTP Location Zones - description: | - Status data for all HTTP - location zones. - type: object - additionalProperties: - $ref: '#/definitions/NginxHTTPLocationZone' - example: - site1: - requests: 736395 - responses: - 1xx: 0 - 2xx: 727290 - 3xx: 4614 - 4xx: 934 - 5xx: 1535 - codes: - 200: 727290 - 301: 4614 - 404: 934 - 503: 1535 - total: 734373 - discarded: 2020 - received: 180157219 - sent: 20183175459 - site2: - requests: 185307 - responses: - 1xx: 0 - 2xx: 112674 - 3xx: 45383 - 4xx: 2504 - 5xx: 4419 - codes: - 200: 112674 - 301: 45383 - 404: 2504 - 503: 4419 - total: 164980 - discarded: 20326 - received: 51575327 - sent: 2983241510 - NginxHTTPLocationZone: - title: HTTP Location Zone - type: object - properties: - requests: - type: integer - description: The total number of client requests received from clients. - responses: - description: The total number of responses sent to clients, the - number of responses with status codes - “1xx”, “2xx”, “3xx”, - “4xx”, and “5xx”, and - the number of responses per each status code. - type: object - readOnly: true - properties: - 1xx: - type: integer - description: The number of responses with “1xx” status codes. - readOnly: true - 2xx: - type: integer - description: The number of responses with “2xx” status codes. - readOnly: true - 3xx: - type: integer - description: The number of responses with “3xx” status codes. - readOnly: true - 4xx: - type: integer - description: The number of responses with “4xx” status codes. - readOnly: true - 5xx: - type: integer - description: The number of responses with “5xx” status codes. - readOnly: true - codes: - type: object - description: The number of responses per each status code. - readOnly: true - properties: - codeNumber: - type: integer - description: The number of responses with this particular status code. - readOnly: true - total: - type: integer - description: The total number of responses sent to clients. - readOnly: true - discarded: - type: integer - description: The total number of - requests completed without sending a response. - received: - type: integer - description: The total number of bytes received from clients. - sent: - type: integer - description: The total number of bytes sent to clients. - example: - requests: 706690 - responses: - 1xx: 0 - 2xx: 699482 - 3xx: 4522 - 4xx: 907 - 5xx: 266 - codes: - 200: 112674 - 301: 4522 - 404: 2504 - 503: 266 - total: 705177 - discarded: 1513 - received: 172711587 - sent: 19415530115 - NginxHTTPCachesMap: - title: HTTP Caches - description: | - Status information of all HTTP caches configured by - proxy_cache_path - and other “*_cache_path” directives. - type: object - additionalProperties: - $ref: '#/definitions/NginxHTTPCache' - example: - http-cache: - size: 530915328 - max_size: 536870912 - cold: false - hit: - responses: 254032 - bytes: 6685627875 - stale: - responses: 0 - bytes: 0 - updating: - responses: 0 - bytes: 0 - revalidated: - responses: 0 - bytes: 0 - miss: - responses: 1619201 - bytes: 53841943822 - expired: - responses: 45859 - bytes: 1656847080 - responses_written: 44992 - bytes_written: 1641825173 - bypass: - responses: 200187 - bytes: 5510647548 - responses_written: 200173 - bytes_written: 44992 - frontend-cache: - size: 530915328 - max_size: 536870912 - cold: false - hit: - responses: 254032 - bytes: 6685627875 - stale: - responses: 0 - bytes: 0 - updating: - responses: 0 - bytes: 0 - revalidated: - responses: 0 - bytes: 0 - miss: - responses: 1619201 - bytes: 53841943822 - expired: - responses: 45859 - bytes: 1656847080 - responses_written: 44992 - bytes_written: 1641825173 - bypass: - responses: 200187 - bytes: 5510647548 - responses_written: 200173 - bytes_written: 44992 - NginxHTTPCache: - title: HTTP Cache - type: object - properties: - size: - type: integer - description: The current size of the cache. - max_size: - type: integer - description: The limit on the maximum size of the cache - specified in the configuration. - cold: - type: boolean - description: A boolean value indicating whether the “cache loader” process - is still loading data from disk into the cache. - hit: - type: object - properties: - responses: - type: integer - description: The total number of - valid - responses read from the cache. - bytes: - type: integer - description: The total number of bytes read from the cache. - stale: - type: object - properties: - responses: - type: integer - description: The total number of expired responses read from the cache (see - proxy_cache_use_stale - and other “*_cache_use_stale” directives). - bytes: - type: integer - description: The total number of bytes read from the cache. - updating: - type: object - properties: - responses: - type: integer - description: The total number of expired responses read from the cache - while responses were being updated (see - proxy_cache_use_stale - and other “*_cache_use_stale” directives). - bytes: - type: integer - description: The total number of bytes read from the cache. - revalidated: - type: object - properties: - responses: - type: integer - description: The total number of expired and revalidated responses - read from the cache (see - proxy_cache_revalidate - and other “*_cache_revalidate” directives. - bytes: - type: integer - description: The total number of bytes read from the cache. - miss: - type: object - properties: - responses: - type: integer - description: The total number of responses not found in the cache. - bytes: - type: integer - description: The total number of bytes read from the proxied server. - responses_written: - type: integer - description: The total number of responses written to the cache. - bytes_written: - type: integer - description: The total number of bytes written to the cache. - expired: - type: object - properties: - responses: - type: integer - description: The total number of expired responses not taken from the cache. - bytes: - type: integer - description: The total number of bytes read from the proxied server. - responses_written: - type: integer - description: The total number of responses written to the cache. - bytes_written: - type: integer - description: The total number of bytes written to the cache. - bypass: - type: object - properties: - responses: - type: integer - description: The total number of responses not looked up in the cache due to the - proxy_cache_bypass - and other “*_cache_bypass” directives. - bytes: - type: integer - description: The total number of bytes read from the proxied server. - responses_written: - type: integer - description: The total number of responses written to the cache. - bytes_written: - type: integer - description: The total number of bytes written to the cache. - example: - size: 530915328 - max_size: 536870912 - cold: false - hit: - responses: 254032 - bytes: 6685627875 - stale: - responses: 0 - bytes: 0 - updating: - responses: 0 - bytes: 0 - revalidated: - responses: 0 - bytes: 0 - miss: - responses: 1619201 - bytes: 53841943822 - expired: - responses: 45859 - bytes: 1656847080 - responses_written: 44992 - bytes_written: 1641825173 - bypass: - responses: 200187 - bytes: 5510647548 - responses_written: 200173 - bytes_written: 44992 - NginxHTTPLimitConnZonesMap: - title: HTTP limit_conns - description: | - Status data for all HTTP - limit_conn zones. - type: object - additionalProperties: - $ref: '#/definitions/NginxHTTPLimitConnZone' - NginxHTTPLimitConnZone: - title: HTTP Connections Limiting - type: object - properties: - passed: - type: integer - description: The total number of connections that were neither limited - nor accounted as limited. - rejected: - type: integer - description: The total number of connections that were rejected. - rejected_dry_run: - type: integer - description: The total number of connections accounted as rejected in the - dry run - mode. - example: - passed: 15 - rejected: 0 - rejected_dry_run: 2 - NginxHTTPLimitReqZonesMap: - title: HTTP limit_reqs - description: | - Status data for all HTTP - limit_req zones. - type: object - additionalProperties: - $ref: '#/definitions/NginxHTTPLimitReqZone' - NginxHTTPLimitReqZone: - title: HTTP Requests Rate Limiting - type: object - properties: - passed: - type: integer - description: The total number of requests that were neither limited - nor accounted as limited. - delayed: - type: integer - description: The total number of requests that were delayed. - rejected: - type: integer - description: The total number of requests that were rejected. - delayed_dry_run: - type: integer - description: The total number of requests accounted as delayed in the - dry run - mode. - rejected_dry_run: - type: integer - description: The total number of requests accounted as rejected in the - dry run - mode. - example: - passed: 15 - delayed: 4 - rejected: 0 - delayed_dry_run: 1 - rejected_dry_run: 2 - NginxHTTPUpstreamMap: - title: HTTP Upstreams - description: | - Status information of all HTTP - dynamically configurable - groups. - type: object - additionalProperties: - $ref: '#/definitions/NginxHTTPUpstream' - example: - trac-backend: - peers: - - id: 0 - server: 10.0.0.1:8088 - name: 10.0.0.1:8088 - backup: false - weight: 5 - state: up - active: 0 - ssl: - handshakes: 620311 - handshakes_failed: 3432 - session_reuses: 36442 - no_common_protocol: 4 - handshake_timeout: 0 - peer_rejected_cert: 0 - verify_failures: - expired_cert: 2 - revoked_cert: 1 - hostname_mismatch: 2 - other: 1 - requests: 667231 - header_time: 20 - response_time: 36 - responses: - 1xx: 0 - 2xx: 666310 - 3xx: 0 - 4xx: 915 - 5xx: 6 - codes: - 200: 666310 - 404: 915 - 503: 6 - total: 667231 - sent: 251946292 - received: 19222475454 - fails: 0 - unavail: 0 - health_checks: - checks: 26214 - fails: 0 - unhealthy: 0 - last_passed: true - downtime: 0 - downstart: 2022-06-28T11:09:21.602Z - selected: 2022-06-28T15:01:25Z - - id: 1 - server: 10.0.0.1:8089 - name: 10.0.0.1:8089 - backup: true - weight: 1 - state: unhealthy - active: 0 - requests: 0 - responses: - 1xx: 0 - 2xx: 0 - 3xx: 0 - 4xx: 0 - 5xx: 0 - codes: {} - total: 0 - sent: 0 - received: 0 - fails: 0 - unavail: 0 - health_checks: - checks: 26284 - fails: 26284 - unhealthy: 1 - last_passed: false - downtime: 262925617 - downstart: 2022-06-28T11:09:21.602Z - selected: 2022-06-28T15:01:25Z - keepalive: 0 - zombies: 0 - zone: trac-backend - hg-backend: - peers: - - id: 0 - server: 10.0.0.1:8088 - name: 10.0.0.1:8088 - backup: false - weight: 5 - state: up - active: 0 - ssl: - handshakes: 620311 - handshakes_failed: 3432 - session_reuses: 36442 - no_common_protocol: 4 - handshake_timeout: 0 - peer_rejected_cert: 0 - verify_failures: - expired_cert: 2 - revoked_cert: 1 - hostname_mismatch: 2 - other: 1 - requests: 667231 - header_time: 20 - response_time: 36 - responses: - 1xx: 0 - 2xx: 666310 - 3xx: 0 - 4xx: 915 - 5xx: 6 - codes: - 200: 666310 - 404: 915 - 503: 6 - total: 667231 - sent: 251946292 - received: 19222475454 - fails: 0 - unavail: 0 - health_checks: - checks: 26214 - fails: 0 - unhealthy: 0 - last_passed: true - downtime: 0 - downstart: 2022-06-28T11:09:21.602Z - selected: 2022-06-28T15:01:25Z - - id: 1 - server: 10.0.0.1:8089 - name: 10.0.0.1:8089 - backup: true - weight: 1 - state: unhealthy - active: 0 - requests: 0 - responses: - 1xx: 0 - 2xx: 0 - 3xx: 0 - 4xx: 0 - 5xx: 0 - codes: {} - total: 0 - sent: 0 - received: 0 - fails: 0 - unavail: 0 - health_checks: - checks: 26284 - fails: 26284 - unhealthy: 1 - last_passed: false - downtime: 262925617 - downstart: 2022-06-28T11:09:21.602Z - selected: 2022-06-28T15:01:25Z - keepalive: 0 - zombies: 0 - zone: hg-backend - NginxHTTPUpstream: - title: HTTP Upstream - type: object - properties: - peers: - $ref: '#/definitions/NginxHTTPUpstreamPeerMap' - keepalive: - type: integer - description: The current number of idle - keepalive - connections. - zombies: - type: integer - description: The current number of servers removed - from the group but still processing active client requests. - zone: - type: string - description: The name of the shared memory - zone - that keeps the group’s configuration and run-time state. - queue: - type: object - description: > - For the requests - queue, - the following data are provided: - properties: - size: - type: integer - description: The current number of requests in the queue. - max_size: - type: integer - description: The maximum number of requests that can be in the queue - at the same time. - overflows: - type: integer - description: The total number of requests rejected due to the queue overflow. - example: - upstream_backend: - peers: - - id: 0 - server: 10.0.0.1:8088 - name: 10.0.0.1:8088 - backup: false - weight: 5 - state: up - active: 0 - ssl: - handshakes: 620311 - handshakes_failed: 3432 - session_reuses: 36442 - no_common_protocol: 4 - handshake_timeout: 0 - peer_rejected_cert: 0 - verify_failures: - expired_cert: 2 - revoked_cert: 1 - hostname_mismatch: 2 - other: 1 - max_conns: 20 - requests: 667231 - header_time: 20 - response_time: 36 - responses: - 1xx: 0 - 2xx: 666310 - 3xx: 0 - 4xx: 915 - 5xx: 6 - codes: - 200: 666310 - 404: 915 - 503: 6 - total: 667231 - sent: 251946292 - received: 19222475454 - fails: 0 - unavail: 0 - health_checks: - checks: 26214 - fails: 0 - unhealthy: 0 - last_passed: true - downtime: 0 - downstart: 2022-06-28T11:09:21.602Z - selected: 2022-06-28T15:01:25Z - - id: 1 - server: 10.0.0.1:8089 - name: 10.0.0.1:8089 - backup: true - weight: 1 - state: unhealthy - active: 0 - max_conns: 20 - requests: 0 - responses: - 1xx: 0 - 2xx: 0 - 3xx: 0 - 4xx: 0 - 5xx: 0 - codes: {} - total: 0 - sent: 0 - received: 0 - fails: 0 - unavail: 0 - health_checks: - checks: 26284 - fails: 26284 - unhealthy: 1 - last_passed: false - downtime: 262925617 - downstart: 2022-06-28T11:09:21.602Z - selected: 2022-06-28T15:01:25Z - keepalive: 0 - zombies: 0 - zone: upstream_backend - NginxHTTPUpstreamPeerMap: - title: HTTP Upstream Servers - description: | - An array of HTTP - upstream servers. - type: array - items: - $ref: '#/definitions/NginxHTTPUpstreamPeer' - NginxHTTPUpstreamPeer: - title: HTTP Upstream Server - type: object - properties: - id: - type: integer - description: The ID of the server. - readOnly: true - server: - type: string - description: An address - of the server. - service: - type: string - description: The - service - parameter value of the - server - directive. - name: - type: string - description: The name of the server specified in the - server - directive. - readOnly: true - backup: - type: boolean - description: A boolean value indicating whether the server is a - backup - server. - weight: - type: integer - description: Weight - of the server. - state: - type: string - enum: - - up - - draining - - down - - unavail - - checking - - unhealthy - description: Current state, which may be one of - “up”, “draining”, “down”, - “unavail”, “checking”, - and “unhealthy”. - active: - type: integer - description: The current number of active connections. - readOnly: true - ssl: - type: object - readOnly: true - properties: - handshakes: - type: integer - description: The total number of successful SSL handshakes. - readOnly: true - handshakes_failed: - type: integer - description: The total number of failed SSL handshakes. - readOnly: true - session_reuses: - type: integer - description: The total number of session reuses during SSL handshake. - readOnly: true - no_common_protocol: - type: integer - description: The number of SSL handshakes failed - because of no common protocol. - handshake_timeout: - type: integer - description: The number of SSL handshakes failed - because of a timeout. - peer_rejected_cert: - type: integer - description: The number of failed SSL handshakes - when nginx presented the certificate to the upstream server - but it was rejected with a corresponding alert message. - verify_failures: - type: object - description: SSL certificate verification errors - properties: - expired_cert: - type: integer - description: An expired or not yet valid certificate - was presented by an upstream server. - revoked_cert: - type: integer - description: A revoked certificate was presented by an upstream server. - hostname_mismatch: - type: integer - description: Server's certificate doesn't match the hostname. - other: - type: integer - description: Other SSL certificate verification errors. - max_conns: - type: integer - description: The - max_conns - limit for the server. - requests: - type: integer - description: The total number of client requests forwarded to this server. - readOnly: true - responses: - type: object - readOnly: true - properties: - 1xx: - type: integer - description: The number of responses with “1xx” status codes. - readOnly: true - 2xx: - type: integer - description: The number of responses with “2xx” status codes. - readOnly: true - 3xx: - type: integer - description: The number of responses with “3xx” status codes. - readOnly: true - 4xx: - type: integer - description: The number of responses with “4xx” status codes. - readOnly: true - 5xx: - type: integer - description: The number of responses with “5xx” status codes. - readOnly: true - codes: - type: object - description: The number of responses per each status code. - readOnly: true - properties: - codeNumber: - type: integer - description: The number of responses with this particular status code. - readOnly: true - total: - type: integer - description: The total number of responses obtained from this server. - readOnly: true - sent: - type: integer - description: The total number of bytes sent to this server. - readOnly: true - received: - type: integer - description: The total number of bytes received from this server. - readOnly: true - fails: - type: integer - description: The total number of unsuccessful attempts - to communicate with the server. - readOnly: true - unavail: - type: integer - description: How many times the server became unavailable for client requests - (state “unavail”) due to the number of unsuccessful - attempts reaching the - max_fails - threshold. - readOnly: true - health_checks: - type: object - readOnly: true - properties: - checks: - type: integer - description: The total number of - health check - requests made. - fails: - type: integer - description: The number of failed health checks. - unhealthy: - type: integer - description: How many times the server became unhealthy - (state “unhealthy”). - last_passed: - type: boolean - description: Boolean indicating if the last health check request was successful - and passed - tests. - downtime: - type: integer - readOnly: true - description: Total time the server was in the “unavail”, - “checking”, and “unhealthy” states. - downstart: - type: string - format: date-time - readOnly: true - description: The time when the server became - “unavail”, “checking”, - or “unhealthy”, - in the ISO 8601 format with millisecond resolution. - selected: - type: string - format: date-time - readOnly: true - description: The time when the server was last selected to process a request, - in the ISO 8601 format with millisecond resolution. - header_time: - type: integer - readOnly: true - description: The average time to get the - response header - from the server. - response_time: - type: integer - readOnly: true - description: The average time to get the - full response - from the server. - NginxHTTPUpstreamConfServerMap: - title: HTTP Upstream Servers - description: An array of HTTP upstream servers for dynamic configuration. - type: array - items: - $ref: '#/definitions/NginxHTTPUpstreamConfServer' - example: - - id: 0 - server: 10.0.0.1:8088 - weight: 1 - max_conns: 0 - max_fails: 0 - fail_timeout: 10s - slow_start: 10s - route: '' - backup: false - down: false - - id: 1 - server: 10.0.0.1:8089 - weight: 4 - max_conns: 0 - max_fails: 0 - fail_timeout: 10s - slow_start: 10s - route: '' - backup: true - down: true - NginxHTTPUpstreamConfServer: - title: HTTP Upstream Server - description: | - Dynamically configurable parameters of an HTTP upstream - server: - type: object - properties: - id: - type: integer - description: The ID of the HTTP upstream server. - The ID is assigned automatically and cannot be changed. - readOnly: true - server: - type: string - description: Same as the - address - parameter of the HTTP upstream server. - When adding a server, it is possible to specify it as a domain name. - In this case, changes of the IP addresses - that correspond to a domain name will be monitored and automatically - applied to the upstream configuration - without the need of restarting nginx. - This requires the - resolver - directive in the “http” block. - See also the - resolve - parameter of the HTTP upstream server. - service: - type: string - description: Same as the - service - parameter of the HTTP upstream server. - This parameter cannot be changed. - readOnly: true - weight: - type: integer - description: Same as the - weight - parameter of the HTTP upstream server. - max_conns: - type: integer - description: Same as the - max_conns - parameter of the HTTP upstream server. - max_fails: - type: integer - description: Same as the - max_fails - parameter of the HTTP upstream server. - fail_timeout: - type: string - description: Same as the - fail_timeout - parameter of the HTTP upstream server. - slow_start: - type: string - description: Same as the - slow_start - parameter of the HTTP upstream server. - route: - type: string - description: Same as the - route - parameter of the HTTP upstream server. - backup: - type: boolean - description: When true, adds a - backup - server. - This parameter cannot be changed. - readOnly: true - down: - type: boolean - description: Same as the - down - parameter of the HTTP upstream server. - drain: - type: boolean - description: Same as the - drain - parameter of the HTTP upstream server. - parent: - type: string - description: Parent server ID of the resolved server. - The ID is assigned automatically and cannot be changed. - readOnly: true - host: - type: string - description: Hostname of the resolved server. - The hostname is assigned automatically and cannot be changed. - readOnly: true - example: - id: 1 - server: 10.0.0.1:8089 - weight: 4 - max_conns: 0 - max_fails: 0 - fail_timeout: 10s - slow_start: 10s - route: '' - backup: true - down: true - NginxHTTPKeyvalZonesMap: - title: HTTP Keyval Shared Memory Zones - description: | - Contents of all HTTP keyval shared memory zones. - type: object - additionalProperties: - $ref: '#/definitions/NginxHTTPKeyvalZone' - example: - keyval_zone: - key1: value1 - key2: value2 - key3: value3 - one: - arg1: value1 - arg2: value2 - arg3: value3 - NginxHTTPKeyvalZone: - title: HTTP Keyval Shared Memory Zone - description: | - Contents of an HTTP keyval shared memory zone - when using the GET method. - type: object - example: - key1: value1 - key2: value2 - key3: value3 - NginxHTTPKeyvalZonePostPatch: - title: HTTP Keyval Shared Memory Zone - description: | - Contents of an HTTP keyval shared memory zone - when using the POST or PATCH methods. - type: object - example: - key1: value1 - key2: value2 - key3: - value: value3 - expire: 30000 - NginxStreamServerZonesMap: - title: Stream Server Zones - description: | - Status information for all stream - status zones. - type: object - additionalProperties: - $ref: '#/definitions/NginxStreamServerZone' - example: - mysql-frontend: - processing: 2 - connections: 270925 - sessions: - 2xx: 155564 - 4xx: 0 - 5xx: 0 - total: 270925 - discarded: 0 - received: 28988975 - sent: 3879346317 - ssl: - handshakes: 76455 - handshakes_failed: 432 - session_reuses: 28770 - no_common_protocol: 4 - no_common_cipher: 2 - handshake_timeout: 0 - peer_rejected_cert: 0 - verify_failures: - no_cert: 0 - expired_cert: 2 - revoked_cert: 1 - other: 1 - dns: - processing: 1 - connections: 155569 - sessions: - 2xx: 155564 - 4xx: 0 - 5xx: 0 - total: 155569 - discarded: 0 - received: 4200363 - sent: 20489184 - ssl: - handshakes: 2040 - handshakes_failed: 23 - session_reuses: 65 - no_common_protocol: 4 - no_common_cipher: 2 - handshake_timeout: 0 - peer_rejected_cert: 0 - verify_failures: - no_cert: 0 - expired_cert: 2 - revoked_cert: 1 - other: 1 - NginxStreamServerZone: - title: Stream Server Zone - type: object - properties: - processing: - type: integer - description: The number of client connections - that are currently being processed. - connections: - type: integer - description: The total number of connections accepted from clients. - sessions: - type: object - description: The total number of completed sessions, - and the number of sessions completed with status codes - “2xx”, “4xx”, or “5xx”. - properties: - 2xx: - type: integer - description: The total number of sessions completed with - status codes - “2xx”. - 4xx: - type: integer - description: The total number of sessions completed with - status codes - “4xx”. - 5xx: - type: integer - description: The total number of sessions completed with - status codes - “5xx”. - total: - type: integer - description: The total number of completed client sessions. - discarded: - type: integer - description: The total number of - connections completed without creating a session. - received: - type: integer - description: The total number of bytes received from clients. - sent: - type: integer - description: The total number of bytes sent to clients. - ssl: - type: object - readOnly: true - properties: - handshakes: - type: integer - description: The total number of successful SSL handshakes. - readOnly: true - handshakes_failed: - type: integer - description: The total number of failed SSL handshakes. - readOnly: true - session_reuses: - type: integer - description: The total number of session reuses during SSL handshake. - readOnly: true - no_common_protocol: - type: integer - description: The number of SSL handshakes failed - because of no common protocol. - no_common_cipher: - type: integer - description: The number of SSL handshakes failed - because of no shared cipher. - handshake_timeout: - type: integer - description: The number of SSL handshakes failed - because of a timeout. - peer_rejected_cert: - type: integer - description: The number of failed SSL handshakes - when nginx presented the certificate to the client - but it was rejected with a corresponding alert message. - verify_failures: - type: object - description: SSL certificate verification errors - properties: - no_cert: - type: integer - description: A client did not provide the required certificate. - expired_cert: - type: integer - description: An expired or not yet valid certificate - was presented by a client. - revoked_cert: - type: integer - description: A revoked certificate was presented by a client. - other: - type: integer - description: Other SSL certificate verification errors. - example: - dns: - processing: 1 - connections: 155569 - sessions: - 2xx: 155564 - 4xx: 0 - 5xx: 0 - total: 155569 - discarded: 0 - received: 4200363 - sent: 20489184 - ssl: - handshakes: 76455 - handshakes_failed: 432 - session_reuses: 28770 - no_common_protocol: 4 - no_common_cipher: 2 - handshake_timeout: 0 - peer_rejected_cert: 0 - verify_failures: - no_cert: 0 - expired_cert: 2 - revoked_cert: 1 - other: 1 - NginxStreamLimitConnZonesMap: - title: Stream limit_conns - description: | - Status data for all stream - limit_conn zones. - type: object - additionalProperties: - $ref: '#/definitions/NginxStreamLimitConnZone' - NginxStreamLimitConnZone: - title: Stream Connections Limiting - type: object - properties: - passed: - type: integer - description: The total number of connections that were neither limited - nor accounted as limited. - rejected: - type: integer - description: The total number of connections that were rejected. - rejected_dry_run: - type: integer - description: The total number of connections accounted as rejected in the - dry run - mode. - example: - passed: 15 - rejected: 0 - rejected_dry_run: 2 - NginxStreamUpstreamMap: - title: Stream Upstreams - description: Status information of stream upstream server groups. - type: object - additionalProperties: - $ref: '#/definitions/NginxStreamUpstream' - example: - mysql_backends: - peers: - - id: 0 - server: 10.0.0.1:12345 - name: 10.0.0.1:12345 - backup: false - weight: 5 - state: up - active: 0 - ssl: - handshakes: 1045 - handshakes_failed: 89 - session_reuses: 321 - no_common_protocol: 4 - handshake_timeout: 0 - peer_rejected_cert: 0 - verify_failures: - expired_cert: 2 - revoked_cert: 1 - hostname_mismatch: 2 - other: 1 - max_conns: 30 - connecions: 1231 - sent: 251946292 - received: 19222475454 - fails: 0 - unavail: 0 - health_checks: - checks: 26214 - fails: 0 - unhealthy: 0 - last_passed: true - downtime: 0 - downstart: 2022-06-28T11:09:21.602Z - selected: 2022-06-28T15:01:25Z - - id: 1 - server: 10.0.0.1:12346 - name: 10.0.0.1:12346 - backup: true - weight: 1 - state: unhealthy - active: 0 - max_conns: 30 - connections: 0 - sent: 0 - received: 0 - fails: 0 - unavail: 0 - health_checks: - checks: 26284 - fails: 26284 - unhealthy: 1 - last_passed: false - downtime: 262925617 - downstart: 2022-06-28T11:09:21.602Z - selected: 2022-06-28T15:01:25Z - zombies: 0 - zone: mysql_backends - dns: - peers: - - id: 0 - server: 10.0.0.1:12347 - name: 10.0.0.1:12347 - backup: false - weight: 5 - state: up - active: 0 - ssl: - handshakes: 5268 - handshakes_failed: 121 - session_reuses: 854 - no_common_protocol: 4 - handshake_timeout: 0 - peer_rejected_cert: 0 - verify_failures: - expired_cert: 2 - revoked_cert: 1 - hostname_mismatch: 2 - other: 1 - max_conns: 30 - connections: 667231 - sent: 251946292 - received: 19222475454 - fails: 0 - unavail: 0 - health_checks: - checks: 26214 - fails: 0 - unhealthy: 0 - last_passed: true - downtime: 0 - downstart: 2022-06-28T11:09:21.602Z - selected: 2022-06-28T15:01:25Z - - id: 1 - server: 10.0.0.1:12348 - name: 10.0.0.1:12348 - backup: true - weight: 1 - state: unhealthy - active: 0 - connections: 0 - max_conns: 30 - sent: 0 - received: 0 - fails: 0 - unavail: 0 - health_checks: - checks: 26284 - fails: 26284 - unhealthy: 1 - last_passed: false - downtime: 262925617 - downstart: 2022-06-28T11:09:21.602Z - selected: 2022-06-28T15:01:25Z - zombies: 0 - zone: dns - NginxStreamUpstream: - title: Stream Upstream - type: object - properties: - peers: - $ref: '#/definitions/NginxStreamUpstreamPeerMap' - zombies: - type: integer - description: The current number of servers removed from the group - but still processing active client connections. - zone: - type: string - description: The name of the shared memory - zone - that keeps the group’s configuration and run-time state. - example: - dns: - peers: - - id: 0 - server: 10.0.0.1:12347 - name: 10.0.0.1:12347 - backup: false - weight: 5 - state: up - active: 0 - ssl: - handshakes: 200 - handshakes_failed: 4 - session_reuses: 189 - no_common_protocol: 4 - handshake_timeout: 0 - peer_rejected_cert: 0 - verify_failures: - expired_cert: 2 - revoked_cert: 1 - hostname_mismatch: 2 - other: 1 - max_conns: 50 - connections: 667231 - sent: 251946292 - received: 19222475454 - fails: 0 - unavail: 0 - health_checks: - checks: 26214 - fails: 0 - unhealthy: 0 - last_passed: true - downtime: 0 - downstart: 2022-06-28T11:09:21.602Z - selected: 2022-06-28T15:01:25Z - - id: 1 - server: 10.0.0.1:12348 - name: 10.0.0.1:12348 - backup: true - weight: 1 - state: unhealthy - active: 0 - max_conns: 50 - connections: 0 - sent: 0 - received: 0 - fails: 0 - unavail: 0 - health_checks: - checks: 26284 - fails: 26284 - unhealthy: 1 - last_passed: false - downtime: 262925617 - downstart: 2022-06-28T11:09:21.602Z - selected: 2022-06-28T15:01:25Z - zombies: 0 - zone: dns - NginxStreamUpstreamPeerMap: - title: Stream Upstream Servers - description: Array of stream upstream servers. - type: array - items: - $ref: '#/definitions/NginxStreamUpstreamPeer' - NginxStreamUpstreamPeer: - title: Stream Upstream Server - type: object - properties: - id: - type: integer - description: The ID of the server. - readOnly: true - server: - type: string - description: An - address - of the server. - service: - type: string - description: The - service - parameter value of the - server - directive. - name: - type: string - format: hostname - description: The name of the server specified in the - server - directive. - readOnly: true - backup: - type: boolean - description: A boolean value indicating whether the server is a - backup - server. - weight: - type: integer - description: Weight - of the server. - state: - type: string - readOnly: true - enum: - - up - - down - - unavail - - checking - - unhealthy - description: Current state, which may be one of - “up”, “down”, “unavail”, - “checking”, or “unhealthy”. - active: - type: integer - description: The current number of connections. - readOnly: true - ssl: - type: object - readOnly: true - properties: - handshakes: - type: integer - description: The total number of successful SSL handshakes. - readOnly: true - handshakes_failed: - type: integer - description: The total number of failed SSL handshakes. - readOnly: true - session_reuses: - type: integer - description: The total number of session reuses during SSL handshake. - readOnly: true - no_common_protocol: - type: integer - description: The number of SSL handshakes failed - because of no common protocol. - handshake_timeout: - type: integer - description: The number of SSL handshakes failed - because of a timeout. - peer_rejected_cert: - type: integer - description: The number of failed SSL handshakes - when nginx presented the certificate to the upstream server - but it was rejected with a corresponding alert message. - verify_failures: - type: object - description: SSL certificate verification errors - properties: - expired_cert: - type: integer - description: An expired or not yet valid certificate - was presented by an upstream server. - revoked_cert: - type: integer - description: A revoked certificate was presented by an upstream server. - hostname_mismatch: - type: integer - description: Server's certificate doesn't match the hostname. - other: - type: integer - description: Other SSL certificate verification errors. - max_conns: - type: integer - description: The - max_conns - limit for the server. - connections: - type: integer - description: The total number of client connections forwarded to this server. - readOnly: true - connect_time: - type: integer - description: The average time to connect to the upstream server. - readOnly: true - first_byte_time: - type: integer - description: The average time to receive the first byte of data. - readOnly: true - response_time: - type: integer - description: The average time to receive the last byte of data. - readOnly: true - sent: - type: integer - description: The total number of bytes sent to this server. - readOnly: true - received: - type: integer - description: The total number of bytes received from this server. - readOnly: true - fails: - type: integer - description: The total number of unsuccessful attempts - to communicate with the server. - readOnly: true - unavail: - type: integer - description: How many times the server became unavailable for client connections - (state “unavail”) due to the number of unsuccessful - attempts reaching the - max_fails - threshold. - readOnly: true - health_checks: - type: object - readOnly: true - properties: - checks: - type: integer - description: The total number of - health check - requests made. - readOnly: true - fails: - type: integer - description: The number of failed health checks. - readOnly: true - unhealthy: - type: integer - description: How many times the server became unhealthy - (state “unhealthy”). - readOnly: true - last_passed: - type: boolean - description: Boolean indicating whether the last health check request - was successful and passed - tests. - readOnly: true - downtime: - type: integer - description: Total time the server was in the - “unavail”, “checking”, - and “unhealthy” states. - readOnly: true - downstart: - type: string - format: date-time - description: The time when the server became - “unavail”, “checking”, - or “unhealthy”, - in the ISO 8601 format with millisecond resolution. - readOnly: true - selected: - type: string - format: date-time - description: The time when the server was last selected - to process a connection, - in the ISO 8601 format with millisecond resolution. - readOnly: true - NginxStreamUpstreamConfServerMap: - title: Stream Upstream Servers - description: | - An array of stream upstream servers for dynamic configuration. - type: array - items: - $ref: '#/definitions/NginxStreamUpstreamConfServer' - example: - - id: 0 - server: 10.0.0.1:12348 - weight: 1 - max_conns: 0 - max_fails: 1 - fail_timeout: 10s - slow_start: 0 - backup: false - down: false - - id: 1 - server: 10.0.0.1:12349 - weight: 1 - max_conns: 0 - max_fails: 1 - fail_timeout: 10s - slow_start: 0 - backup: false - down: false - NginxStreamUpstreamConfServer: - title: Stream Upstream Server - description: | - Dynamically configurable parameters of a stream upstream - server: - type: object - properties: - id: - type: integer - description: The ID of the stream upstream server. - The ID is assigned automatically and cannot be changed. - readOnly: true - server: - type: string - description: Same as the - address - parameter of the stream upstream server. - When adding a server, it is possible to specify it as a domain name. - In this case, changes of the IP addresses - that correspond to a domain name will be monitored and automatically - applied to the upstream configuration - without the need of restarting nginx. - This requires the - resolver - directive in the “stream” block. - See also the - resolve - parameter of the stream upstream server. - service: - type: string - description: Same as the - service - parameter of the stream upstream server. - This parameter cannot be changed. - readOnly: true - weight: - type: integer - description: Same as the - weight - parameter of the stream upstream server. - max_conns: - type: integer - description: Same as the - max_conns - parameter of the stream upstream server. - max_fails: - type: integer - description: Same as the - max_fails - parameter of the stream upstream server. - fail_timeout: - type: string - description: Same as the - fail_timeout - parameter of the stream upstream server. - slow_start: - type: string - description: Same as the - slow_start - parameter of the stream upstream server. - backup: - type: boolean - description: When true, adds a - backup - server. - This parameter cannot be changed. - readOnly: true - down: - type: boolean - description: Same as the - down - parameter of the stream upstream server. - parent: - type: string - description: Parent server ID of the resolved server. - The ID is assigned automatically and cannot be changed. - readOnly: true - host: - type: string - description: Hostname of the resolved server. - The hostname is assigned automatically and cannot be changed. - readOnly: true - example: - id: 0 - server: 10.0.0.1:12348 - weight: 1 - max_conns: 0 - max_fails: 1 - fail_timeout: 10s - slow_start: 0 - backup: false - down: false - NginxStreamKeyvalZonesMap: - title: Stream Keyval Shared Memory Zones - description: | - Contents of all stream keyval shared memory zones. - type: object - additionalProperties: - $ref: '#/definitions/NginxStreamKeyvalZone' - example: - keyval_zone: - key1: value1 - key2: value2 - key3: value3 - one: - arg1: value1 - arg2: value2 - arg3: value3 - NginxStreamKeyvalZone: - title: Stream Keyval Shared Memory Zone - description: | - Contents of a stream keyval shared memory zone when using the GET method. - type: object - example: - key1: value1 - key2: value2 - key3: value3 - NginxStreamKeyvalZonePostPatch: - title: Stream Keyval Shared Memory Zone - description: | - Contents of a stream keyval shared memory zone - when using the POST or PATCH methods. - type: object - example: - key1: value1 - key2: value2 - key3: - value: value3 - expire: 30000 - NginxStreamZoneSync: - title: Stream Zone Sync Node - type: object - properties: - zones: - type: object - title: Zone Sync Zones - description: Synchronization information per each shared memory zone. - additionalProperties: - $ref: '#/definitions/NginxStreamZoneSyncZone' - status: - type: object - description: Synchronization information per node in a cluster. - properties: - bytes_in: - type: integer - description: The number of bytes received by this node. - msgs_in: - type: integer - description: The number of messages received by this node. - msgs_out: - type: integer - description: The number of messages sent by this node. - bytes_out: - type: integer - description: The number of bytes sent by this node. - nodes_online: - type: integer - description: The number of peers this node is connected to. - example: - zones: - zone1: - records_pending: 2061 - records_total: 260575 - zone2: - records_pending: 0 - records_total: 14749 - status: - bytes_in: 1364923761 - msgs_in: 337236 - msgs_out: 346717 - bytes_out: 1402765472 - nodes_online: 15 - NginxStreamZoneSyncZone: - title: Sync Zone - description: Synchronization status of a shared memory zone. - type: object - properties: - records_pending: - type: integer - description: The number of records that need to be sent to the cluster. - records_total: - type: integer - description: The total number of records stored in the shared memory zone. - NginxResolverZonesMap: - title: Resolver Zones - description: | - Status data for all - resolver zones. - type: object - additionalProperties: - $ref: '#/definitions/NginxResolverZone' - example: - resolver_zone1: - requests: - name: 25460 - srv: 130 - addr: 2580 - responses: - noerror: 26499 - formerr: 0 - servfail: 3 - nxdomain: 0 - notimp: 0 - refused: 0 - timedout: 243 - unknown: 478 - resolver_zone2: - requests: - name: 325460 - srv: 1130 - addr: 12580 - responses: - noerror: 226499 - formerr: 0 - servfail: 283 - nxdomain: 0 - notimp: 0 - refused: 0 - timedout: 743 - unknown: 1478 - NginxResolverZone: - title: Resolver Zone - description: | - Statistics of DNS requests and responses per particular - resolver zone. - type: object - properties: - requests: - type: object - readOnly: true - properties: - name: - type: integer - description: The total number of requests - to resolve names to addresses. - readOnly: true - srv: - type: integer - description: The total number of requests - to resolve SRV records. - readOnly: true - addr: - type: integer - description: The total number of requests - to resolve addresses to names. - readOnly: true - responses: - type: object - readOnly: true - properties: - noerror: - type: integer - description: The total number of successful responses. - readOnly: true - formerr: - type: integer - description: The total number of - FORMERR (Format error) responses. - readOnly: true - servfail: - type: integer - description: The total number of - SERVFAIL (Server failure) responses. - readOnly: true - nxdomain: - type: integer - description: The total number of - NXDOMAIN (Host not found) responses. - readOnly: true - notimp: - type: integer - description: The total number of - NOTIMP (Unimplemented) responses. - readOnly: true - refused: - type: integer - description: The total number of - REFUSED (Operation refused) responses. - readOnly: true - timedout: - type: integer - description: The total number of timed out requests. - readOnly: true - unknown: - type: integer - description: The total number of requests - completed with an unknown error. - readOnly: true - example: - resolver_zone1: - requests: - name: 25460 - srv: 130 - addr: 2580 - responses: - noerror: 26499 - formerr: 0 - servfail: 3 - nxdomain: 0 - notimp: 0 - refused: 0 - timedout: 243 - unknown: 478 - NginxWorker: - title: Worker process - description: | - Statistics per each worker process. - properties: - id: - type: integer - description: The ID of the worker process. - pid: - type: integer - description: The PID identifier of the worker process used by the operating system. - connections: - type: object - description: | - The number of accepted, dropped, active, and idle connections - per worker process. - properties: - accepted: - type: integer - description: | - The total number of client connections - accepted by the worker process. - dropped: - type: integer - description: | - The total number of client connections - dropped by the worker process. - active: - type: integer - description: | - The current number of active client connections - that are currently being handled by the worker process. - idle: - type: integer - description: | - The number of idle client connections - that are currently being handled by the worker process. - http: - type: object - properties: - requests: - type: object - description: The total number of client requests handled by the worker process. - properties: - total: - type: integer - description: The total number of client requests received by the worker process. - current: - type: integer - description: The current number of client requests that are currently being processed by the worker process. - example: - id: 0 - pid: 32212 - connections: - accepted: 1 - dropped: 0 - active: 1 - idle: 0 - http: - requests: - total: 15 - current: 1 - NginxWorkersMap: - title: Worker processes - description: nginx worker processes object. - type: object - additionalProperties: - $ref: '#/definitions/NginxWorker' - example: - - id: 0 - pid: 32212 - connections: - accepted: 1 - dropped: 0 - active: 1 - idle: 0 - http: - requests: - total: 19 - current: 1 - - id: 1 - pid: 32214 - connections: - accepted: 1 - dropped: 0 - active: 1 - idle: 0 - http: - requests: - total: 15 - current: 0 - NginxError: - title: Error - description: | - nginx error object. - type: object - properties: - error: - type: object - properties: - status: - type: integer - description: HTTP error code. - text: - type: string - description: Error description. - code: - type: string - description: Internal nginx error code. - request_id: - type: string - description: The ID of the request, equals the value of the - $request_id - variable. - href: - type: string - description: Link to reference documentation. diff --git a/yaml/yaml2xml.py b/yaml/yaml2xml.py deleted file mode 100755 --- a/yaml/yaml2xml.py +++ /dev/null @@ -1,523 +0,0 @@ -#!/usr/bin/env python - -# Copyright (C) Nginx, Inc. - -import sys, re, datetime - -from yaml import load, dump -from collections import OrderedDict - -try: - from yaml import CLoader as Loader, CDumper as Dumper, resolver as resolver - -except ImportError: - from yaml import Loader, Dumper, resolver - - -# primitive markdown parser and utf encoding for output -def node_description(node): - - text = node.get('description') - if text == None: - return "" - - # - t = re.sub('\', r'', text) - t = re.sub('\', r'', t) - - t = re.sub('\', r'', t) - t = re.sub('\', r'', t) - - t = re.sub('\(.*?)\', r'\2', t) - - # [desc](url) - t = re.sub('\[(.*)\]\((.*?)\)', r'\1', t) - - # ** foo ** is value - t = re.sub('[*?][*?](\w+)[*?][*?]', r'\1', t) - - # * foo * is literal - t = re.sub('[*?](\w+)[*?]', r'\1', t) - - - return t.encode('utf-8').rstrip() - - -def pretty_endpoint(ep): - return ep.replace('/slabs/','slabs').replace('/resolvers/','resolvers').replace('/http/','HTTP ').replace('/stream/','stream ').replace('s/','s').replace('_',' ') - - -# human-readable html element id based on path -def path_to_id(path): - if path == '/': - return 'root' - - str = path.replace('/', '_') - str = str.replace('{', '') - str = str.replace('}','') - - return uncamelcase(str[1:]) - - -def multiple(str): - fin2 = str[-2:] - fin = str[-1:] - - if fin2 == 's' or fin2 == 'sh' or fin2 == 'ch': - last = 'es' - elif fin == 'x' or fin == 'z': - last = 'es' - else: - last = 's' - - return str + last - -def uncamelcase(name): - s1 = re.sub('(.)([A-Z][a-z]+)', r'\1_\2', name) - return re.sub('([a-z0-9])([A-Z])', r'\1_\2', s1).lower() - -def make_defid(str): - return 'def_' + uncamelcase(str) - -# returns name of a referenced object -def get_refname(obj): - return obj['$ref'][14:] # remove '#/definitions/' - - -# returns referenced object itself from global definitions table -def node_from_ref(doc, obj): - return doc['definitions'][get_refname(obj)] - - -def render_doc(doc): - - out = "
\n" - out += render_paths(doc) - out += "
\n" - - # dry run, perform refcount - render_defs(doc) - - out += "
\n" - out += render_defs(doc) - out += "
\n" - - return out - - -def render_paths(doc): - - global curr_endpoint - - paths = doc['paths'] - - out = "\n" - out += "\n" - - for path_key in paths: - path_id = path_to_id(path_key) - curr_endpoint = path_key - out += render_path(doc, path_key, paths[path_key], path_id) - - curr_endpoint = None - - out += "\n" - out += "\n" - - return out - - -def render_defs(doc): - - out = "\n" - out += "\n" - - for d in doc['definitions']: - - if refs.get(d) == None: - continue - - node = doc['definitions'][d] - - out += "\n" % make_defid(d) - title = node.get('title', '') - - out += "%s:\n" % title - - out += render_node(doc, d, node, True) - - out += "\n" - - out += "\n" - out += "\n" - - return out - - -def render_path(doc, path_key, path, path_id): - - out = "\n" % (path_id, path_key) - out += "%s\n" % path_key - out += "\n" - - out += "\n" - - # List of common method parameters - for method_key in path: - if method_key != 'parameters': - continue - - out += "Parameters common for all methods:\n" - out += render_parameters(doc, path[method_key]) - - - # List of methods for this path - out += 'Supported methods:\n' - out += '\n' - - - for method_key in ['get', 'post', 'patch', 'delete']: - - if path.get(method_key) == None: - continue - - method = path[method_key] - - id = method['operationId'] - summ = method['summary'] - desc = node_description(method) - name = method_key.upper() - - out += "\n" % id - out += "%s - %s\n" % (name, summ) - out += "%s\n" % desc - - out += render_method(doc, name, method) - - out += "\n" - - out += "\n" - out += "\n" - - return out - - -def render_method(doc, method_name, method): - - out = "" - - if method.get('parameters'): - out += "\n" - out += "Request parameters:\n" - out += render_parameters(doc, method['parameters']) - out += "\n" - - out += "\n" - out += "Possible responses:\n" - out += "\n" - - out += "\n" - - for response_key in method['responses']: - out += "" - out += render_response(doc, response_key, method['responses'][response_key]) - out += "\n" - - out += "\n" - - return out - - -def render_parameters(doc, params): - - out = '\n' - - for p in params: - - out += "%s\n" % p['name'] - out += "(" - - out += render_node(doc, None, p, True) - - if p.get("required"): - - if p["required"] == True: - out += ", required" - else: - out += ", optional" - else: - out += ", optional" - - out += ")" - - out += "\n" - out += "\n" - - desc = node_description(p) - out += desc - - out += "\n" - - out += "\n" - - return out - - -def render_response(doc, response_key, response): - - out = "" - - desc = node_description(response) - - out += response_key + " - " + desc - - if response.get('schema'): - out += ", returns " - out += render_node(doc, None, response) - - return out - - - -def render_reference(doc, nodename, node): - - global in_array, refs - - out = "" - - ref = get_refname(node) - - refnode = node_from_ref(doc, node) - - if refnode.get('additionalProperties'): - # in entries - - out += "a collection of " - ref = get_refname(refnode['additionalProperties']) - target = node_from_ref(doc, refnode['additionalProperties']) - label = target.get('title', ref) - out += "\"%s\"" % (make_defid(ref), label) - out += " objects" - refs[ref] = 1 - if curr_endpoint != None: - out += " for all %s" % pretty_endpoint(curr_endpoint) - - return out - - # arrays and primitive types are printed immediately - nt = refnode.get('type', 'object') - title = refnode.get('title', ref) - if nt == 'object': - if in_array == True: - title = multiple(title) - - out += "%s" % (make_defid(ref), title) - refs[ref] = 1 - - elif nt == 'array': - - if nodename == 'peers': - ref = get_refname(refnode['items']) - out += "An array of:" - refnode = node_from_ref(doc, refnode['items']) - out += render_node(doc, ref, refnode, True) - return out - - out += "an array of " - - in_array = True - out += render_node(doc, nodename, refnode['items'], True) - in_array = False - else: - # dead code actually - out += "%s\n" % nt - - return out - - -# displays object recursively if described inline, or generates links -def render_node(doc, nodename, node, show_type=False): - - if node.get('$ref'): - return render_reference(doc, nodename, node) - - elif node.get('schema'): - return render_reference(doc, nodename, node['schema']) - - out = "" - - if node.get('additionalProperties'): - # in definitions - ref = get_refname(node['additionalProperties']) - target = node_from_ref(doc, node['additionalProperties']) - label = target.get('title', ref) - desc = node_description(node) - out += "%sA collection of " % desc - out += "\"%s\"" % (make_defid(ref), label) - refs[ref] = 1 - out += " objects\n" - - return out - - nt = node.get('type', 'object') - - if nt == 'object': - out += render_object(doc, node) - - elif nt == 'array': - desc = node_description(node) - out += "%s\n" % desc - out += "array element type:\n" - out += render_node(doc, nodename, node['items'], True) - - else: - if show_type: - if in_array == True: - out += "%s" % multiple(node['type']) - else: - out += "%s" % node['type'] - - if node.get('example'): - out += render_example(node['example']) - - return out - -def json_simple_type(obj): - - if isinstance(obj, bool): - if obj == True: - return 'true' - else: - return 'false' - - elif isinstance(obj, str): - return '"' + obj + '"' - - elif isinstance(obj,datetime.datetime): - t = obj.strftime("%Y-%m-%dT%H:%M:%S.%f")[:-3] - z = obj.strftime("Z%Z") - return '"' + t + z + '"' - - else: - return str(obj) - -def render_example(obj, level = 0): - - out = "" - - if level == 0: - if isinstance(obj, dict) or isinstance(obj, list): - out += "Example:\n" - else: - out += "Example: %s\n" % json_simple_type(obj) - return out - - out += "\n" - - indent = ' ' * level - next_indent = ' ' * (level + 1) - - if isinstance(obj, dict): - out += '{\n' - i = 0 - last = len(obj) - for key in obj: - out += next_indent + '"' + str(key) + '" : ' - out += render_example(obj[key], level + 1) - if i != last - 1: - out += ',' - out += '\n' - i = i + 1 - out += indent + "}" - - elif isinstance(obj, list): - out += '[\n' - i = 0 - last = len(obj) - for item in obj: - out += next_indent - out += render_example(item, level + 1) - if i != last - 1: - out += ',' - out += '\n' - i = i + 1 - out += indent + "]" - else: - out += json_simple_type(obj) - - if level == 0: - out += "\n" - - - return out - - -def render_object(doc, obj): - - out = "" - - if obj.get('description'): - desc = node_description(obj) - out += desc - - if obj.get('properties') == None: - return out - - out += '\n' - for p in obj['properties']: - - prop = obj['properties'][p] - - out += "\n" - out += "%s" % p - - if prop.get('properties') or prop.get('type') == 'object': - obj_type = None # there is nested object - else: - if prop.get('type'): - obj_type = prop['type'] # basic type - else: - obj_type = None # there is a reference - - if obj_type != None: - out += " (%s)\n" % obj_type - - out += "\n" - out += "\n" - - if prop.get('description') and obj_type != None: - desc = node_description(prop) - out += desc + '\n' - - out += render_node(doc, p, prop) - - out += "\n" - out += "\n" - - return out - - -############################################################################### - -if len(sys.argv) < 2: - print("Usage: %s " % sys.argv[0]) - sys.exit(1) - -refs = dict() -curr_endpoint = None -in_array = False - -def ordered_load(stream, Loader=Loader, object_pairs_hook=OrderedDict): - class OrderedLoader(Loader): - pass - def construct_mapping(loader, node): - loader.flatten_mapping(node) - return object_pairs_hook(loader.construct_pairs(node)) - OrderedLoader.add_constructor( - resolver.BaseResolver.DEFAULT_MAPPING_TAG,construct_mapping) - return load(stream, OrderedLoader) - -with open(sys.argv[1], 'r') as src: - content = src.read() - doc = ordered_load(content, Loader=Loader) - print(render_doc(doc))