模块 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
     /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];
默认值
上下文 位置

启用周围位置中的 REST API 接口。对该位置的访问应 受限

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

所有 API 请求都应在 URI 中包含受支持的 API 版本。如果请求 URI 等于位置前缀,则返回受支持的 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 服务器状态信息。多个服务器可能共享同一个区域。

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

兼容性

端点

/

支持的方法

  • GET - 返回根端点列表

    返回根端点列表。

    可能的响应

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

支持的方法

  • GET - 返回 nginx 运行实例的状态

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

    请求参数

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

    可能的响应

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

支持的方法

  • GET - 返回 nginx 进程状态

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

    可能的响应

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

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

    可能的响应

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

支持的方法

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

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

    请求参数

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

    可能的响应

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

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

    可能的响应

    • 204 - 成功
    • 404 - 未知版本 (UnknownVersion),返回 Error
    • 405 - 方法已禁用 (MethodDisabled),返回 Error
/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),返回 Error
/http/

支持的方法

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

    返回一级 HTTP 端点的列表。

    可能的响应

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

支持的方法

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

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

    请求参数

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

    可能的响应

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

    重置客户端 HTTP 请求总数。

    可能的响应

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

支持的方法

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

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

    请求参数

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

    可能的响应

    • 200 - 成功,返回所有 HTTP 服务器区域的“HTTP 服务器区域”对象集合
    • 404 - 未知版本 (UnknownVersion),返回 Error
/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),返回 Error
/http/location_zones/

支持的方法

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

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

    请求参数

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

    可能的响应

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

支持的方法

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

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

    请求参数

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

    可能的响应

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

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

    可能的响应

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

支持的方法

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

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

    请求参数

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

    可能的响应

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

支持的方法

  • GET - 返回缓存的状态

    返回特定缓存的状态。

    请求参数

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

    可能的响应

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

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

    可能的响应

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

支持的方法

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

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

    请求参数

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

    可能的响应

    • 200 - 成功,返回所有 HTTP limit conn 的“HTTP 连接限制”对象集合
    • 404 - 未知版本 (UnknownVersion),返回 Error
/http/limit_conns/{httpLimitConnZoneName}
所有方法的通用参数
httpLimitConnZoneName (字符串,必需)
一个 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),返回 Error
/http/limit_reqs/

支持的方法

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

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

    请求参数

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

    可能的响应

    • 200 - 成功,返回所有 HTTP limit req 的“HTTP 请求速率限制”对象集合
    • 404 - 未知版本 (UnknownVersion),返回 Error
/http/limit_reqs/{httpLimitReqZoneName}
所有方法的通用参数
httpLimitReqZoneNamestring,必需)
limit_req 区域 的名称。

支持的方法

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

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

    请求参数

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

    可能的响应

    • 200 - 成功,返回 HTTP 请求速率限制
    • 404 - 找不到 limit_req(LimitReqNotFound),未知版本(UnknownVersion),返回 错误
  • DELETE - 重置 HTTP limit_req 区域的统计信息

    重置请求限制统计信息。

    可能的响应

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

支持的方法

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

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

    请求参数

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

    可能的响应

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

支持的方法

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

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

    请求参数

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

    可能的响应

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

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

    可能的响应

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

支持的方法

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

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

    可能的响应

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

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

    请求参数

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

    可能的响应

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

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

    可能的响应

    • 200 - 成功,返回 HTTP 上游服务器 数组
    • 400 - 上游是静态的 (UpstreamStatic),无效的服务器 ID (UpstreamBadServerId),服务器 “id” 不可删除 (UpstreamServerImmutable),返回 错误
    • 404 - ID 为 “id” 的服务器不存在 (UpstreamServerNotFound),未知版本 (UnknownVersion),未找到上游 (UpstreamNotFound),返回 错误
    • 405 - 方法已禁用 (MethodDisabled),返回 Error
/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),返回 Error
    • 409 - 条目已存在(EntryExists),键已存在(KeyvalKeyExists),返回 错误
    • 413 - 请求实体太大,返回 错误
    • 415 - JSON 错误 (JsonError),返回 错误
  • PATCH - 修改键值或删除键

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

    请求参数

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

    可能的响应

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

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

    可能的响应

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

支持的方法

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

    返回一级流端点的列表。

    可能的响应

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

支持的方法

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

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

    请求参数

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

    可能的响应

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

支持的方法

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

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

    请求参数

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

    可能的响应

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

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

    可能的响应

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

支持的方法

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

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

    请求参数

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

    可能的响应

    • 200 - 成功,返回所有流限制连接的“流连接限制”对象的集合
    • 404 - 未知版本 (UnknownVersion),返回 Error
/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),返回 Error
/stream/upstreams/

支持的方法

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

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

    请求参数

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

    可能的响应

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

支持的方法

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

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

    请求参数

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

    可能的响应

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

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

    可能的响应

    • 204 - 成功
    • 400 - 上游是静态的 (UpstreamStatic),返回 错误
    • 404 - 未知版本 (UnknownVersion),未找到上游 (UpstreamNotFound),返回 错误
    • 405 - 方法已禁用 (MethodDisabled),返回 Error
/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),无效的“max_conns” (UpstreamBadMaxConns),无效的“max_fails” (UpstreamBadMaxFails),无效的“fail_timeout” (UpstreamBadFailTimeout),无效的“slow_start” (UpstreamBadSlowStart),“服务”为空 (UpstreamBadService),没有定义解析器来解析 (UpstreamConfNoResolver),上游“名称”没有备份 (UpstreamNoBackup),上游“名称”内存耗尽 (UpstreamOutOfMemory),读取请求正文失败 BodyReadError),返回 错误
    • 404 - 未知版本 (UnknownVersion),未找到上游 (UpstreamNotFound),返回 错误
    • 405 - 方法已禁用 (MethodDisabled),返回 Error
    • 409 - 条目已存在 (EntryExists),返回 错误
    • 415 - JSON 错误 (JsonError),返回 错误
/stream/upstreams/{streamUpstreamName}/servers/{streamUpstreamServerId}
所有方法的通用参数
streamUpstreamName (string,必需)
上游服务器组的名称。
streamUpstreamServerId (字符串,必需)
服务器的 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),无效的“服务器”参数 (UpstreamBadAddress),服务器“主机”中没有端口 (UpstreamBadAddress),无效的服务器 ID (UpstreamBadServerId),无效的“权重” (UpstreamBadWeight),无效的“max_conns” (UpstreamBadMaxConns),无效的“max_fails” (UpstreamBadMaxFails),无效的“fail_timeout” (UpstreamBadFailTimeout),无效的“slow_start” (UpstreamBadSlowStart),读取请求正文失败 BodyReadError),“服务”为空 (UpstreamBadService),服务器“ID”地址不可变 (UpstreamServerImmutable),服务器“ID”权重不可变 (UpstreamServerWeightImmutable),上游“名称”内存已用尽 (UpstreamOutOfMemory),返回 错误
    • 404 - ID 为 “id” 的服务器不存在 (UpstreamServerNotFound),未知版本 (UnknownVersion),未找到上游 (UpstreamNotFound),返回 错误
    • 405 - 方法已禁用 (MethodDisabled),返回 Error
    • 415 - JSON 错误 (JsonError),返回 错误
  • DELETE - 从流上游服务器组中移除服务器

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

    可能的响应

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

支持的方法

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

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

    请求参数

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

    可能的响应

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

支持的方法

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

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

    请求参数

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

    可能的响应

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

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

    请求参数

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

    可能的响应

    • 201 - 已创建
    • 400 - JSON 无效(KeyvalFormatError),键格式无效(KeyvalFormatError),需要键(KeyvalFormatError),未启用 keyval 超时(KeyvalFormatError),只能添加一个键(KeyvalFormatError),读取请求正文失败 BodyReadError),返回 错误
    • 404 - 未找到 Keyval(KeyvalNotFound),版本未知(UnknownVersion),返回 错误
    • 405 - 方法已禁用 (MethodDisabled),返回 Error
    • 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),返回 Error
    • 413 - 请求实体太大,返回 错误
    • 415 - JSON 错误 (JsonError),返回 错误
  • DELETE - 清空流 keyval 区域

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

    可能的响应

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

支持的方法

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

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

    可能的响应

/resolvers/

支持的方法

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

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

    请求参数

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

    可能的响应

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

支持的方法

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

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

    请求参数

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

    可能的响应

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

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

    可能的响应

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

支持的方法

  • GET - 返回 SSL 统计信息

    返回 SSL 统计信息。

    请求参数

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

    可能的响应

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

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

    可能的响应

    • 204 - 成功
    • 404 - 未知版本 (UnknownVersion),返回 Error
    • 405 - 方法已禁用 (MethodDisabled),返回 Error
/workers/

支持的方法

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

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

    请求参数

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

    可能的响应

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

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

    可能的响应

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

支持的方法

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

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

    请求参数

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

    可能的响应

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

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

    可能的响应

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

响应对象