模块 ngx_http_api_module

示例配置
指令
     api
     status_zone
兼容性
端点
     /
     /nginx
     /processes
     /connections
     /slabs/
     /slabs/{slabZoneName}
     /http/
     /http/requests
     /http/server_zones/
     /http/server_zones/{httpServerZoneName}
     /http/location_zones/
     /http/location_zones/{httpLocationZoneName}
     /http/caches/
     /http/caches/{httpCacheZoneName}
     /http/limit_conns/
     /http/limit_conns/{httpLimitConnZoneName}
     /http/limit_reqs/
     /http/limit_reqs/{httpLimitReqZoneName}
     /http/upstreams/
     /http/upstreams/{httpUpstreamName}/
     /http/upstreams/{httpUpstreamName}/servers/
     /http/upstreams/{httpUpstreamName}/servers/{httpUpstreamServerId}
     /http/keyvals/
     /http/keyvals/{httpKeyvalZoneName}
     /stream/
     /stream/server_zones/
     /stream/server_zones/{streamServerZoneName}
     /stream/limit_conns/
     /stream/limit_conns/{streamLimitConnZoneName}
     /stream/upstreams/
     /stream/upstreams/{streamUpstreamName}/
     /stream/upstreams/{streamUpstreamName}/servers/
     /stream/upstreams/{streamUpstreamName}/servers/{streamUpstreamServerId}
     /stream/keyvals/
     /stream/keyvals/{streamKeyvalZoneName}
     /stream/zone_sync/
     /resolvers/
     /resolvers/{resolverZoneName}
     /ssl
     /license
     /workers/
     /workers/{workerId}
响应对象

ngx_http_api_module 模块 (1.13.3) 提供了 REST API,用于访问各种状态信息、动态配置上游服务器组以及管理 键值对,而无需重新配置 Nginx。

该模块取代了 ngx_http_status_modulengx_http_upstream_conf_module 模块。

当使用 PATCHPOST 方法时,请确保有效负载不超过用于读取客户端请求正文的 缓冲区大小,否则可能会返回 413 (请求实体过大) 错误。

此模块作为我们 商业订阅 的一部分提供。

示例配置

http {
    upstream backend {
        zone http_backend 64k;

        server backend1.example.com weight=5;
        server backend2.example.com;
    }

    proxy_cache_path /data/nginx/cache_backend keys_zone=cache_backend:10m;

    server {
        server_name backend.example.com;

        location / {
            proxy_pass  http://backend;
            proxy_cache cache_backend;

            health_check;
        }

        status_zone server_backend;
    }

    keyval_zone zone=one:32k state=one.keyval;
    keyval $arg_text $text zone=one;

    server {
        listen 127.0.0.1;

        location /api {
            api write=on;
            allow 127.0.0.1;
            deny all;
        }
    }
}

stream {
    upstream backend {
        zone stream_backend 64k;

        server backend1.example.com:12345 weight=5;
        server backend2.example.com:12345;
    }

    server {
        listen      127.0.0.1:12345;
        proxy_pass  backend;
        status_zone server_backend;
        health_check;
    }
}

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

http://127.0.0.1/api/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

指令

语法 api [write=on|off];
默认值
上下文 location

在周围的 location 中打开 REST API 接口。应限制对该 location 的访问。限制

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

所有 API 请求都应在 URI 中包含受支持的 API 版本。如果请求 URI 等于 location 前缀,则返回受支持的 API 版本列表。当前 API 版本为“9”。

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

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

语法 status_zone zone;
默认值
上下文 serverlocationif in location

此指令出现在版本 1.13.12 中。

在指定的 zone 中启用虚拟 httpstream 服务器状态信息的收集。多个服务器可以共享同一个 zone。

从 1.17.0 开始,可以按 location 收集状态信息。特殊值 off 在嵌套的 location 块中禁用统计信息收集。请注意,统计信息是在请求处理结束的 location 上下文中收集的。如果在请求处理期间发生 内部重定向,则它可能与原始 location 不同。

兼容性

端点

/

支持的方法

  • GET - 返回根端点列表

    返回根端点列表。

    可能的响应

    • 200 - 成功,返回一个字符串数组
    • 404 - 未知版本 (UnknownVersion),返回 错误
/nginx

支持的方法

  • GET - 返回正在运行的 Nginx 实例的状态

    返回 Nginx 版本、构建名称、地址、配置重新加载次数以及主进程和工作进程的 ID。

    请求参数

    fields (string,可选)
    限制将输出正在运行的 Nginx 实例的哪些字段。

    可能的响应

    • 200 - 成功,返回 nginx
    • 404 - 未知版本 (UnknownVersion),返回 错误
/processes

支持的方法

  • GET - 返回 Nginx 进程状态

    返回异常终止和重新生成的子进程的数量。

    可能的响应

    • 200 - 成功,返回 进程
    • 404 - 未知版本 (UnknownVersion),返回 错误
  • DELETE - 重置 Nginx 进程统计信息

    重置异常终止和重新生成的子进程的计数器。

    可能的响应

    • 204 - 成功
    • 404 - 未知版本 (UnknownVersion),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/connections

支持的方法

  • GET - 返回客户端连接统计信息

    返回客户端连接的统计信息。

    请求参数

    fields (string,可选)
    限制将输出连接统计信息的哪些字段。

    可能的响应

    • 200 - 成功,返回 连接
    • 404 - 未知版本 (UnknownVersion),返回 错误
  • DELETE - 重置客户端连接统计信息

    重置已接受和已丢弃的客户端连接的统计信息。

    可能的响应

    • 204 - 成功
    • 404 - 未知版本 (UnknownVersion),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/slabs/

支持的方法

  • GET - 返回所有 slab 的状态

    返回每个使用 slab 分配器的共享内存区域的 slab 状态。

    请求参数

    fields (string,可选)
    限制将输出 slab 区域的哪些字段。如果“fields”值为空,则仅输出区域名称。

    可能的响应

/slabs/{slabZoneName}
所有方法的通用参数
slabZoneName (string,必需)
使用 slab 分配器的共享内存区域的名称。

支持的方法

  • GET - 返回一个 slab 的状态

    返回特定使用 slab 分配器的共享内存区域的 slab 状态。

    请求参数

    fields (string,可选)
    限制将输出 slab 区域的哪些字段。

    可能的响应

  • DELETE - 重置 slab 统计信息

    重置每个内存槽的“reqs”和“fails”指标。

    可能的响应

    • 204 - 成功
    • 404 - Slab 未找到 (SlabNotFound)、未知版本 (UnknownVersion),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/http/

支持的方法

  • GET - 返回与 HTTP 相关的端点列表

    返回一级 HTTP 端点列表。

    可能的响应

    • 200 - 成功,返回一个字符串数组
    • 404 - 未知版本 (UnknownVersion),返回 错误
/http/requests

支持的方法

  • GET - 返回 HTTP 请求统计信息

    返回客户端 HTTP 请求的状态。

    请求参数

    fields (string,可选)
    限制将输出客户端 HTTP 请求统计信息的哪些字段。

    可能的响应

    • 200 - 成功,返回 HTTP 请求
    • 404 - 未知版本 (UnknownVersion),返回 错误
  • DELETE - 重置 HTTP 请求统计信息

    重置客户端 HTTP 请求的总数。

    可能的响应

    • 204 - 成功
    • 404 - 未知版本 (UnknownVersion),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/http/server_zones/

支持的方法

  • GET - 返回所有 HTTP 服务器区域的状态

    返回每个 HTTP 服务器区域 的状态信息。

    请求参数

    fields (string,可选)
    限制将输出服务器区域的哪些字段。如果“fields”值为空,则仅输出服务器区域名称。

    可能的响应

    • 200 - 成功,返回所有 HTTP 服务器区域的“HTTP 服务器区域”对象的集合
    • 404 - 未知版本 (UnknownVersion),返回 错误
/http/server_zones/{httpServerZoneName}
所有方法的通用参数
httpServerZoneName (string,必需)
HTTP 服务器区域的名称。

支持的方法

  • GET - 返回一个 HTTP 服务器区域的状态

    返回特定 HTTP 服务器区域的状态。

    请求参数

    fields (string,可选)
    限制将输出服务器区域的哪些字段。

    可能的响应

    • 200 - 成功,返回 HTTP 服务器区域
    • 404 - 服务器区域未找到 (ServerZoneNotFound)、未知版本 (UnknownVersion),返回 错误
  • DELETE - 重置特定 HTTP 服务器区域的统计信息

    重置特定 HTTP 服务器区域中已接受和已丢弃的请求、响应、已接收和已发送的字节、SSL 握手计数器和会话重用计数器的统计信息。

    可能的响应

    • 204 - 成功
    • 404 - 服务器区域未找到 (ServerZoneNotFound)、未知版本 (UnknownVersion),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/http/location_zones/

支持的方法

  • GET - 返回所有 HTTP 位置区域的状态

    返回每个 HTTP 位置区域 的状态信息。

    请求参数

    fields (string,可选)
    限制输出位置区域的哪些字段。如果“fields”值为空,则仅输出区域名称。

    可能的响应

    • 200 - 成功,返回所有 HTTP 位置区域的 "HTTP 位置区域" 对象集合。
    • 404 - 未知版本 (UnknownVersion),返回 错误
/http/location_zones/{httpLocationZoneName}
所有方法的通用参数
httpLocationZoneName (string, 必需)
HTTP 位置区域的名称。

支持的方法

  • GET - 返回 HTTP 位置区域的状态

    返回特定 HTTP 位置区域的状态。

    请求参数

    fields (string,可选)
    限制输出位置区域的哪些字段。

    可能的响应

    • 200 - 成功,返回 HTTP 位置区域
    • 404 - 位置区域未找到 (LocationZoneNotFound),未知版本 (UnknownVersion),返回 错误
  • DELETE - 重置位置区域的统计信息。

    重置特定位置区域中已接受和已丢弃的请求、响应、已接收和已发送字节的统计信息。

    可能的响应

    • 204 - 成功
    • 404 - 位置区域未找到 (LocationZoneNotFound),未知版本 (UnknownVersion),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/http/caches/

支持的方法

  • GET - 返回所有缓存的状态

    返回 proxy_cache_path 和其他“*_cache_path”指令配置的每个缓存的状态。

    请求参数

    fields (string,可选)
    限制输出缓存区域的哪些字段。如果“fields”值为空,则仅输出缓存区域的名称。

    可能的响应

    • 200 - 成功,返回所有 HTTP 缓存的 "HTTP 缓存" 对象集合
    • 404 - 未知版本 (UnknownVersion),返回 错误
/http/caches/{httpCacheZoneName}
所有方法的通用参数
httpCacheZoneName (string, 必需)
缓存区域的名称。

支持的方法

  • GET - 返回缓存的状态

    返回特定缓存的状态。

    请求参数

    fields (string,可选)
    限制输出缓存区域的哪些字段。

    可能的响应

    • 200 - 成功,返回 HTTP 缓存
    • 404 - 缓存未找到 (CacheNotFound),未知版本 (UnknownVersion),返回 错误
  • DELETE - 重置缓存统计信息

    重置特定缓存区域中缓存命中/未命中的统计信息。

    可能的响应

    • 204 - 成功
    • 404 - 缓存未找到 (CacheNotFound),未知版本 (UnknownVersion),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/http/limit_conns/

支持的方法

  • GET - 返回所有 HTTP limit_conn 区域的状态

    返回每个 HTTP limit_conn 区域的状态信息。

    请求参数

    fields (string,可选)
    限制输出 limit_conn 区域的哪些字段。如果“fields”值为空,则仅输出区域名称。

    可能的响应

    • 200 - 成功,返回所有 HTTP limit_conn 的 "HTTP 连接限制" 对象集合
    • 404 - 未知版本 (UnknownVersion),返回 错误
/http/limit_conns/{httpLimitConnZoneName}
所有方法的通用参数
httpLimitConnZoneName (string, 必需)
limit_conn 区域的名称。

支持的方法

  • GET - 返回 HTTP limit_conn 区域的状态

    返回特定 HTTP limit_conn 区域的状态。

    请求参数

    fields (string,可选)
    限制输出 limit_conn 区域的哪些字段。

    可能的响应

    • 200 - 成功,返回 HTTP 连接限制
    • 404 - limit_conn 未找到 (LimitConnNotFound),未知版本 (UnknownVersion),返回 错误
  • DELETE - 重置 HTTP limit_conn 区域的统计信息

    重置连接限制统计信息。

    可能的响应

    • 204 - 成功
    • 404 - limit_conn 未找到 (LimitConnNotFound),未知版本 (UnknownVersion),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/http/limit_reqs/

支持的方法

  • GET - 返回所有 HTTP limit_req 区域的状态

    返回每个 HTTP limit_req 区域的状态信息。

    请求参数

    fields (string,可选)
    限制输出 limit_req 区域的哪些字段。如果“fields”值为空,则仅输出区域名称。

    可能的响应

/http/limit_reqs/{httpLimitReqZoneName}
所有方法的通用参数
httpLimitReqZoneName (string, 必需)
limit_req 区域的名称。

支持的方法

  • GET - 返回 HTTP limit_req 区域的状态

    返回特定 HTTP limit_req 区域的状态。

    请求参数

    fields (string,可选)
    限制输出 limit_req 区域的哪些字段。

    可能的响应

  • DELETE - 重置 HTTP limit_req 区域的统计信息

    重置请求限制统计信息。

    可能的响应

    • 204 - 成功
    • 404 - limit_req 未找到 (LimitReqNotFound),未知版本 (UnknownVersion),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/http/upstreams/

支持的方法

  • GET - 返回所有 HTTP 上游服务器组的状态

    返回每个 HTTP 上游服务器组及其服务器的状态。

    请求参数

    fields (string,可选)
    限制输出上游服务器组的哪些字段。如果“fields”值为空,则仅输出上游的名称。

    可能的响应

    • 200 - 成功,返回所有 HTTP 上游的 "HTTP 上游" 对象集合
    • 404 - 未知版本 (UnknownVersion),返回 错误
/http/upstreams/{httpUpstreamName}/
所有方法的通用参数
httpUpstreamName (string, 必需)
HTTP 上游服务器组的名称。

支持的方法

  • GET - 返回 HTTP 上游服务器组的状态

    返回特定 HTTP 上游服务器组及其服务器的状态。

    请求参数

    fields (string,可选)
    限制输出上游服务器组的哪些字段。

    可能的响应

    • 200 - 成功,返回 HTTP 上游
    • 400 - 上游是静态的 (UpstreamStatic),返回 错误
    • 404 - 未知版本 (UnknownVersion),上游未找到 (UpstreamNotFound),返回 错误
  • DELETE - 重置 HTTP 上游服务器组的统计信息

    重置上游服务器组中每个上游服务器的统计信息和队列统计信息。

    可能的响应

    • 204 - 成功
    • 400 - 上游是静态的 (UpstreamStatic),返回 错误
    • 404 - 未知版本 (UnknownVersion),上游未找到 (UpstreamNotFound),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/http/upstreams/{httpUpstreamName}/servers/
所有方法的通用参数
httpUpstreamName (string, 必需)
上游服务器组的名称。

支持的方法

  • GET - 返回 HTTP 上游服务器组中所有服务器的配置

    返回特定 HTTP 上游服务器组中每个服务器的配置。

    可能的响应

    • 200 - 成功,返回 HTTP 上游服务器 数组
    • 400 - 上游是静态的 (UpstreamStatic),返回 错误
    • 404 - 未知版本 (UnknownVersion),上游未找到 (UpstreamNotFound),返回 错误
  • POST - 将服务器添加到 HTTP 上游服务器组

    将新服务器添加到 HTTP 上游服务器组。服务器参数以 JSON 格式指定。

    请求参数

    postHttpUpstreamServer (HTTP 上游服务器, 必需)
    新服务器的地址和其他可选参数,以 JSON 格式指定。“ID”、“backup”和“service”参数不能更改。

    可能的响应

    • 201 - 已创建,返回 HTTP 上游服务器
    • 400 - 上游是静态的 (UpstreamStatic),无效的“parameter”值 (UpstreamConfFormatError),缺少“server”参数 (UpstreamConfFormatError),未知参数“name” (UpstreamConfFormatError),嵌套对象或列表 (UpstreamConfFormatError),解析时出现“error” (UpstreamBadAddress),服务上游“host”可能没有端口 (UpstreamBadAddress),服务上游“host”需要域名 (UpstreamBadAddress),无效的“weight” (UpstreamBadWeight),无效的“max_conns” (UpstreamBadMaxConns),无效的“max_fails” (UpstreamBadMaxFails),无效的“fail_timeout” (UpstreamBadFailTimeout),无效的“slow_start” (UpstreamBadSlowStart),读取请求正文失败 BodyReadError),路由太长 (UpstreamBadRoute),“service”为空 (UpstreamBadService),未定义解析器以解析 (UpstreamConfNoResolver),上游“name”没有备份 (UpstreamNoBackup),上游“name”内存不足 (UpstreamOutOfMemory),返回 错误
    • 404 - 未知版本 (UnknownVersion),上游未找到 (UpstreamNotFound),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
    • 409 - 条目已存在 (EntryExists),返回 错误
    • 415 - JSON 错误 (JsonError),返回 错误
/http/upstreams/{httpUpstreamName}/servers/{httpUpstreamServerId}
所有方法的通用参数
httpUpstreamName (string, 必需)
上游服务器组的名称。
httpUpstreamServerId (string, 必需)
服务器的 ID。

支持的方法

  • GET - 返回 HTTP 上游服务器组中服务器的配置

    返回 HTTP 上游服务器组中特定服务器的配置。

    可能的响应

    • 200 - 成功,返回 HTTP 上游服务器
    • 400 - 上游是静态的 (UpstreamStatic),无效的服务器 ID (UpstreamBadServerId),返回 错误
    • 404 - ID 为“id”的服务器不存在 (UpstreamServerNotFound),未知版本 (UnknownVersion),上游未找到 (UpstreamNotFound),返回 错误
  • PATCH - 修改 HTTP 上游服务器组中的服务器

    修改 HTTP 上游服务器组中特定服务器的设置。服务器参数以 JSON 格式指定。

    请求参数

    patchHttpUpstreamServer (HTTP 上游服务器, 必需)
    服务器参数,以 JSON 格式指定。“ID”、“backup”和“service”参数不能更改。

    可能的响应

    • 200 - 成功,返回 HTTP 上游服务器
    • 400 - 上游是静态的 (UpstreamStatic),无效的“parameter”值 (UpstreamConfFormatError),未知参数“name” (UpstreamConfFormatError),嵌套对象或列表 (UpstreamConfFormatError),解析时出现“error” (UpstreamBadAddress),无效的“server”参数 (UpstreamBadAddress),无效的服务器 ID (UpstreamBadServerId),无效的“weight” (UpstreamBadWeight),无效的“max_conns” (UpstreamBadMaxConns),无效的“max_fails” (UpstreamBadMaxFails),无效的“fail_timeout” (UpstreamBadFailTimeout),无效的“slow_start” (UpstreamBadSlowStart),读取请求正文失败 BodyReadError),路由太长 (UpstreamBadRoute),“service”为空 (UpstreamBadService),服务器“ID”地址不可变 (UpstreamServerImmutable),服务器“ID”权重不可变 (UpstreamServerWeightImmutable),上游“name”内存不足 (UpstreamOutOfMemory),返回 错误
    • 404 - ID 为“id”的服务器不存在 (UpstreamServerNotFound),未知版本 (UnknownVersion),上游未找到 (UpstreamNotFound),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
    • 415 - JSON 错误 (JsonError),返回 错误
  • DELETE - 从 HTTP 上游服务器组中删除服务器

    从 HTTP 上游服务器组中删除服务器。

    可能的响应

    • 200 - 成功,返回 HTTP 上游服务器 数组
    • 400 - 上游是静态的 (UpstreamStatic),无效的服务器 ID (UpstreamBadServerId),服务器“id”不可删除 (UpstreamServerImmutable),返回 错误
    • 404 - ID 为“id”的服务器不存在 (UpstreamServerNotFound),未知版本 (UnknownVersion),上游未找到 (UpstreamNotFound),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/http/keyvals/

支持的方法

  • GET - 返回所有 HTTP keyval 区域的键值对

    返回每个 HTTP keyval 共享内存 区域的键值对。

    请求参数

    fields (string,可选)
    如果“fields”值为空,则仅输出 HTTP keyval 区域名称。

    可能的响应

/http/keyvals/{httpKeyvalZoneName}
所有方法的通用参数
httpKeyvalZoneName (string, 必需)
HTTP keyval 共享内存区域的名称。

支持的方法

  • GET - 从 HTTP keyval 区域返回键值对

    返回存储在特定 HTTP keyval 共享内存区域中的键值对。

    请求参数

    key (string, 可选)
    从 HTTP keyval 区域获取特定的键值对。

    可能的响应

    • 200 - 成功,返回HTTP Keyval 共享内存区域
    • 404 - 未找到 Keyval (KeyvalNotFound),未找到 keyval 键 (KeyvalKeyNotFound),未知版本 (UnknownVersion),返回错误
  • POST - 向 HTTP keyval 区域添加键值对

    向 HTTP keyval 共享内存区域添加新的键值对。如果 HTTP keyval 共享内存区域为空,则可以输入多个键值对。

    请求参数

    Key-value (HTTP Keyval 共享内存区域, 必需)
    键值对以 JSON 格式指定。如果 HTTP keyval 共享内存区域为空,则可以输入多个键值对。可以使用 expire 参数为键值对指定以毫秒为单位的过期时间,该参数会覆盖timeout keyval_zone 指令的参数。

    可能的响应

    • 201 - 已创建
    • 400 - JSON 无效 (KeyvalFormatError),键格式无效 (KeyvalFormatError),需要键 (KeyvalFormatError),keyval 超时未启用 (KeyvalFormatError),只能添加一个键 (KeyvalFormatError),读取请求正文失败 (BodyReadError),返回错误
    • 404 - 未找到 Keyval (KeyvalNotFound),未知版本 (UnknownVersion),返回错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
    • 409 - 条目已存在 (EntryExists),键已存在 (KeyvalKeyExists),返回错误
    • 413 - 请求实体过大,返回错误
    • 415 - JSON 错误 (JsonError),返回 错误
  • PATCH - 修改键值对或删除键

    更改键值对中所选键的值,通过将键值设置为 null 来删除键,更改键值对的过期时间。如果启用了集群中 keyval 区域的同步,则仅在目标集群节点上删除键。可以使用 expire 参数为键值对指定以毫秒为单位的过期时间,该参数会覆盖timeout keyval_zone 指令的参数。

    请求参数

    httpKeyvalZoneKeyValue (HTTP Keyval 共享内存区域, 必需)
    键的新值以 JSON 格式指定。

    可能的响应

    • 204 - 成功
    • 400 - JSON 无效 (KeyvalFormatError),需要键 (KeyvalFormatError),keyval 超时未启用 (KeyvalFormatError),只能更新一个键 (KeyvalFormatError),读取请求正文失败 (BodyReadError),返回错误
    • 404 - 未找到 Keyval (KeyvalNotFound),未找到 keyval 键 (KeyvalKeyNotFound),未知版本 (UnknownVersion),返回错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
    • 413 - 请求实体过大,返回错误
    • 415 - JSON 错误 (JsonError),返回 错误
  • DELETE - 清空 HTTP keyval 区域

    从 HTTP keyval 共享内存区域删除所有键值对。如果启用了集群中 keyval 区域的同步,则仅在目标集群节点上清空 keyval 区域。

    可能的响应

    • 204 - 成功
    • 404 - 未找到 Keyval (KeyvalNotFound),未知版本 (UnknownVersion),返回错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/stream/

支持的方法

  • GET - 返回与流相关的端点的列表

    返回一级流端点的列表。

    可能的响应

    • 200 - 成功,返回一个字符串数组
    • 404 - 未知版本 (UnknownVersion),返回 错误
/stream/server_zones/

支持的方法

  • GET - 返回所有流服务器区域的状态

    返回每个流服务器区域的状态信息。

    请求参数

    fields (string,可选)
    限制将输出服务器区域的哪些字段。如果“fields”值为空,则仅输出服务器区域名称。

    可能的响应

    • 200 - 成功,返回所有流服务器区域的“流服务器区域”对象的集合
    • 404 - 未知版本 (UnknownVersion),返回 错误
/stream/server_zones/{streamServerZoneName}
所有方法的通用参数
streamServerZoneName (string, 必需)
流服务器区域的名称。

支持的方法

  • GET - 返回流服务器区域的状态

    返回特定流服务器区域的状态。

    请求参数

    fields (string,可选)
    限制将输出服务器区域的哪些字段。

    可能的响应

    • 200 - 成功,返回流服务器区域
    • 404 - 服务器区域未找到 (ServerZoneNotFound)、未知版本 (UnknownVersion),返回 错误
  • DELETE - 重置流服务器区域的统计信息

    重置特定流服务器区域中已接受和已丢弃的连接、会话、接收和发送的字节数、SSL 握手计数器和会话重用计数器的统计信息。

    可能的响应

    • 204 - 成功
    • 404 - 服务器区域未找到 (ServerZoneNotFound)、未知版本 (UnknownVersion),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/stream/limit_conns/

支持的方法

  • GET - 返回所有流 limit_conn 区域的状态

    返回每个流limit_conn 区域的状态信息。

    请求参数

    fields (string,可选)
    限制输出 limit_conn 区域的哪些字段。如果“fields”值为空,则仅输出区域名称。

    可能的响应

    • 200 - 成功,返回所有流 limit_conn 的“流连接限制”对象的集合
    • 404 - 未知版本 (UnknownVersion),返回 错误
/stream/limit_conns/{streamLimitConnZoneName}
所有方法的通用参数
streamLimitConnZoneName (string, 必需)
一个limit_conn 区域的名称。

支持的方法

  • GET - 返回流 limit_conn 区域的状态

    返回特定流limit_conn 区域的状态。

    请求参数

    fields (string,可选)
    限制将输出limit_conn 区域的哪些字段。

    可能的响应

    • 200 - 成功,返回流连接限制
    • 404 - limit_conn 未找到 (LimitConnNotFound),未知版本 (UnknownVersion),返回 错误
  • DELETE - 重置流 limit_conn 区域的统计信息

    重置连接限制统计信息。

    可能的响应

    • 204 - 成功
    • 404 - limit_conn 未找到 (LimitConnNotFound),未知版本 (UnknownVersion),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/stream/upstreams/

支持的方法

  • GET - 返回所有流上游服务器组的状态

    返回每个流上游服务器组及其服务器的状态。

    请求参数

    fields (string,可选)
    限制输出上游服务器组的哪些字段。如果“fields”值为空,则仅输出上游的名称。

    可能的响应

    • 200 - 成功,返回所有流上游的“流上游”对象的集合
    • 404 - 未知版本 (UnknownVersion),返回 错误
/stream/upstreams/{streamUpstreamName}/
所有方法的通用参数
streamUpstreamName (string, 必需)
流上游服务器组的名称。

支持的方法

  • GET - 返回流上游服务器组的状态

    返回特定流上游服务器组及其服务器的状态。

    请求参数

    fields (string,可选)
    限制输出上游服务器组的哪些字段。

    可能的响应

    • 200 - 成功,返回流上游
    • 400 - 上游是静态的 (UpstreamStatic),返回 错误
    • 404 - 未知版本 (UnknownVersion),上游未找到 (UpstreamNotFound),返回 错误
  • DELETE - 重置流上游服务器组的统计信息

    重置上游服务器组中每个上游服务器的统计信息。

    可能的响应

    • 204 - 成功
    • 400 - 上游是静态的 (UpstreamStatic),返回 错误
    • 404 - 未知版本 (UnknownVersion),上游未找到 (UpstreamNotFound),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/stream/upstreams/{streamUpstreamName}/servers/
所有方法的通用参数
streamUpstreamName (string, 必需)
上游服务器组的名称。

支持的方法

  • GET - 返回流上游服务器组中所有服务器的配置

    返回特定流上游服务器组中每个服务器的配置。

    可能的响应

    • 200 - 成功,返回流上游服务器的数组
    • 400 - 上游是静态的 (UpstreamStatic),返回 错误
    • 404 - 未知版本 (UnknownVersion),上游未找到 (UpstreamNotFound),返回 错误
  • POST - 向流上游服务器组添加服务器

    向流上游服务器组添加新的服务器。服务器参数以 JSON 格式指定。

    请求参数

    postStreamUpstreamServer (流上游服务器, 必需)
    新服务器的地址和其他可选参数,以 JSON 格式指定。“ID”、“backup”和“service”参数不能更改。

    可能的响应

    • 201 - 已创建,返回流上游服务器
    • 400 - 上游是静态的 (UpstreamStatic),“参数”值无效 (UpstreamConfFormatError),缺少“server”参数 (UpstreamConfFormatError),未知参数“名称” (UpstreamConfFormatError),嵌套对象或列表 (UpstreamConfFormatError),解析时出现“错误” (UpstreamBadAddress),服务器“主机”中没有端口 (UpstreamBadAddress),服务上游“主机”可能没有端口 (UpstreamBadAddress),服务上游“主机”需要域名 (UpstreamBadAddress),“权重”无效 (UpstreamBadWeight),“最大连接数”无效 (UpstreamBadMaxConns),“最大失败次数”无效 (UpstreamBadMaxFails),“失败超时”无效 (UpstreamBadFailTimeout),“慢启动”无效 (UpstreamBadSlowStart),“服务”为空 (UpstreamBadService),未定义解析器以解析 (UpstreamConfNoResolver),上游“名称”没有备份 (UpstreamNoBackup),上游“名称”内存不足 (UpstreamOutOfMemory),读取请求正文失败 (BodyReadError),返回错误
    • 404 - 未知版本 (UnknownVersion),上游未找到 (UpstreamNotFound),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
    • 409 - 条目已存在 (EntryExists),返回 错误
    • 415 - JSON 错误 (JsonError),返回 错误
/stream/upstreams/{streamUpstreamName}/servers/{streamUpstreamServerId}
所有方法的通用参数
streamUpstreamName (string, 必需)
上游服务器组的名称。
streamUpstreamServerId (string, 必需)
服务器的 ID。

支持的方法

  • GET - 返回流上游服务器组中服务器的配置

    返回流上游服务器组中特定服务器的配置。

    可能的响应

    • 200 - 成功,返回流上游服务器
    • 400 - 上游是静态的 (UpstreamStatic),无效的服务器 ID (UpstreamBadServerId),返回 错误
    • 404 - 未知版本 (UnknownVersion),未找到上游 (UpstreamNotFound),ID 为“id”的服务器不存在 (UpstreamServerNotFound),返回错误
  • PATCH - 修改流上游服务器组中的服务器

    修改流上游服务器组中特定服务器的设置。服务器参数以 JSON 格式指定。

    请求参数

    patchStreamUpstreamServer (流上游服务器, 必需)
    服务器参数,以 JSON 格式指定。“ID”、“backup”和“service”参数不能更改。

    可能的响应

    • 200 - 成功,返回流上游服务器
    • 400 - 上游是静态的 (UpstreamStatic),“参数”值无效 (UpstreamConfFormatError),未知参数“名称” (UpstreamConfFormatError),嵌套对象或列表 (UpstreamConfFormatError),解析时出现“错误” (UpstreamBadAddress),“server”参数无效 (UpstreamBadAddress),服务器“主机”中没有端口 (UpstreamBadAddress),服务器 ID 无效 (UpstreamBadServerId),“权重”无效 (UpstreamBadWeight),“最大连接数”无效 (UpstreamBadMaxConns),“最大失败次数”无效 (UpstreamBadMaxFails),“失败超时”无效 (UpstreamBadFailTimeout),“慢启动”无效 (UpstreamBadSlowStart),读取请求正文失败 (BodyReadError),“服务”为空 (UpstreamBadService),服务器“ID”地址是不可变的 (UpstreamServerImmutable),服务器“ID”权重是不可变的 (UpstreamServerWeightImmutable),上游“名称”内存不足 (UpstreamOutOfMemory),返回错误
    • 404 - ID 为“id”的服务器不存在 (UpstreamServerNotFound),未知版本 (UnknownVersion),上游未找到 (UpstreamNotFound),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
    • 415 - JSON 错误 (JsonError),返回 错误
  • DELETE - 从流上游服务器组中删除服务器

    从流服务器组中删除服务器。

    可能的响应

    • 200 - 成功,返回流上游服务器的数组
    • 400 - 上游是静态的 (UpstreamStatic),无效的服务器 ID (UpstreamBadServerId),服务器“id”不可删除 (UpstreamServerImmutable),返回 错误
    • 404 - ID 为“id”的服务器不存在 (UpstreamServerNotFound),未知版本 (UnknownVersion),上游未找到 (UpstreamNotFound),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/stream/keyvals/

支持的方法

  • GET - 从所有流 keyval 区域返回键值对

    返回每个流 keyval 共享内存区域的键值对。

    请求参数

    fields (string,可选)
    如果“fields”值为空,则只输出流 keyval 区域名称。

    可能的响应

/stream/keyvals/{streamKeyvalZoneName}
所有方法的通用参数
streamKeyvalZoneName (string, 必需)
流 keyval 共享内存区域的名称。

支持的方法

  • GET - 从流 keyval 区域返回键值对

    返回存储在特定流 keyval 共享内存区域中的键值对。

    请求参数

    key (string, 可选)
    从流 keyval 区域获取特定的键值对。

    可能的响应

    • 200 - 成功,返回流 Keyval 共享内存区域
    • 404 - 未找到 Keyval (KeyvalNotFound),未找到 keyval 键 (KeyvalKeyNotFound),未知版本 (UnknownVersion),返回错误
  • POST - 向流 keyval 区域添加键值对

    向流 keyval 共享内存区域添加新的键值对。如果流 keyval 共享内存区域为空,则可以输入多个键值对。

    请求参数

    Key-value (流 Keyval 共享内存区域, 必需)
    以 JSON 格式指定键值对。如果流 keyval 共享内存区为空,则可以输入多个键值对。可以使用 expire 参数为键值对指定以毫秒为单位的过期时间,这将覆盖 timeout 参数 keyval_zone 指令。

    可能的响应

    • 201 - 已创建
    • 400 - JSON 无效 (KeyvalFormatError),键格式无效 (KeyvalFormatError),需要键 (KeyvalFormatError),keyval 超时未启用 (KeyvalFormatError),只能添加一个键 (KeyvalFormatError),读取请求正文失败 (BodyReadError),返回错误
    • 404 - 未找到 Keyval (KeyvalNotFound),未知版本 (UnknownVersion),返回错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
    • 409 - 条目已存在 (EntryExists),键已存在 (KeyvalKeyExists),返回错误
    • 413 - 请求实体过大,返回错误
    • 415 - JSON 错误 (JsonError),返回 错误
  • PATCH - 修改键值对或删除键

    更改键值对中所选键的值,通过将键值设置为 null 来删除键,更改键值对的过期时间。如果启用了集群中 keyval 区域的同步,则仅在目标集群节点上删除键。使用 expire 参数以毫秒为单位指定过期时间,这将覆盖 timeout 参数 keyval_zone 指令。

    请求参数

    streamKeyvalZoneKeyValue (流 Keyval 共享内存区,必需)
    键的新值以 JSON 格式指定。

    可能的响应

    • 204 - 成功
    • 400 - JSON 无效 (KeyvalFormatError),需要键 (KeyvalFormatError),keyval 超时未启用 (KeyvalFormatError),只能更新一个键 (KeyvalFormatError),读取请求正文失败 (BodyReadError),返回错误
    • 404 - 未找到 Keyval (KeyvalNotFound),未找到 keyval 键 (KeyvalKeyNotFound),未知版本 (UnknownVersion),返回错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
    • 413 - 请求实体过大,返回错误
    • 415 - JSON 错误 (JsonError),返回 错误
  • DELETE - 清空流 keyval 区域

    从流 keyval 共享内存区域删除所有键值对。如果启用了集群中 keyval 区域的同步,则仅在目标集群节点上清空 keyval 区域。

    可能的响应

    • 204 - 成功
    • 404 - 未找到 Keyval (KeyvalNotFound),未知版本 (UnknownVersion),返回错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/stream/zone_sync/

支持的方法

  • GET - 返回节点的同步状态

    返回集群节点的同步状态。

    可能的响应

/resolvers/

支持的方法

  • GET - 返回所有解析器区域的状态

    返回每个解析器区域的状态信息。

    请求参数

    fields (string,可选)
    限制将输出解析器统计信息的哪些字段。

    可能的响应

    • 200 - 成功,返回所有解析器的“解析器区域”对象的集合
    • 404 - 未知版本 (UnknownVersion),返回 错误
/resolvers/{resolverZoneName}
所有方法的通用参数
resolverZoneName (string,必需)
解析器区域的名称。

支持的方法

  • GET - 返回解析器区域的统计信息

    返回存储在特定解析器区域中的统计信息。

    请求参数

    fields (string,可选)
    限制将输出解析器区域的哪些字段(请求、响应或两者)。

    可能的响应

    • 200 - 成功,返回 解析器区域
    • 404 - 未找到解析器区域 (ResolverZoneNotFound),未知版本 (UnknownVersion),返回 错误
  • DELETE - 重置解析器区域的统计信息。

    重置特定解析器区域中的统计信息。

    可能的响应

    • 204 - 成功
    • 404 - 未找到解析器区域 (ResolverZoneNotFound),未知版本 (UnknownVersion),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/ssl

支持的方法

  • GET - 返回 SSL 统计信息

    返回 SSL 统计信息。

    请求参数

    fields (string,可选)
    限制将输出 SSL 统计信息的哪些字段。

    可能的响应

    • 200 - 成功,返回 SSL
    • 404 - 未知版本 (UnknownVersion),返回 错误
  • DELETE - 重置 SSL 统计信息

    重置 SSL 握手和会话重用的计数器。

    可能的响应

    • 204 - 成功
    • 404 - 未知版本 (UnknownVersion),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/license

支持的方法

  • GET - 返回许可证信息

    可能的响应

    • 200 - 成功,返回 许可证
    • 404 - 未知版本 (UnknownVersion),返回 错误
/workers/

支持的方法

  • GET - 返回所有工作进程的统计信息

    返回所有工作进程的统计信息,例如已接受、已丢弃、活动、空闲连接、总请求数和当前请求数。

    请求参数

    fields (string,可选)
    限制将输出工作进程统计信息的哪些字段。

    可能的响应

    • 200 - 成功,返回所有工作进程的“工作进程”对象的集合
    • 404 - 未找到工作进程 (WorkerNotFound),未知版本 (UnknownVersion),返回 错误
  • DELETE - 重置所有工作进程的统计信息。

    重置所有工作进程的统计信息,例如已接受、已丢弃、活动、空闲连接、总请求数和当前请求数。

    可能的响应

    • 204 - 成功
    • 404 - 未找到工作进程 (WorkerNotFound),未知版本 (UnknownVersion),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误
/workers/{workerId}
所有方法的通用参数
workerId (string,必需)
工作进程的 ID。

支持的方法

  • GET - 返回工作进程的状态

    返回特定工作进程的状态。

    请求参数

    fields (string,可选)
    限制将输出工作进程统计信息的哪些字段。

    可能的响应

    • 200 - 成功,返回 工作进程
    • 404 - 未找到工作进程 (WorkerNotFound),未知版本 (UnknownVersion),返回 错误
  • DELETE - 重置工作进程的统计信息。

    重置已接受、已丢弃、活动、空闲连接以及总请求数和当前请求数的统计信息。

    可能的响应

    • 204 - 成功
    • 404 - 未找到工作进程 (WorkerNotFound),未知版本 (UnknownVersion),返回 错误
    • 405 - 方法禁用 (MethodDisabled),返回 错误

响应对象