手把手教你Nginx常用模块详解之ngx_http_api_module(三)(上)

简介: 手把手教你Nginx常用模块详解之ngx_http_api_module(三)

本专栏非常感谢大家得关注和支持,本人开源项目站点https://erosbt.com 将自己热爱与信仰的技术,持续不辍地传递。


Nginx专栏



一. 指令


ngx_http_api_module

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


二. 用法


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

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

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


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


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

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


三. 端点

/

支持的方法:

  • GET - 根端点返回列表返回根端点列表。可能的回应:
-200 - Success, returns an array of strings

#####/nginx

支持的方法:

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

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


/processes

支持的方法:

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

- 200 - Success, returns [Processes](about:blank#def_nginx_processes) 
  • DELETE - 重置nginx进程统计信息重置异常终止和重新生成的子进程的计数器。可能的回应:
- 204 - Success
/connections

支持的方法:

  • GET - 返回客户连接统计返回客户连接的统计。请求参数: fields(string,可选)限制所述连接的统计信息的字段将被输出。可能的回应:
- 200 - Success, returns [Connections](about:blank#def_nginx_connections) 
  • DELETE - 重置客户端连接统计信息重置接受和丢弃的客户端连接的统计信息 可能的回应:
- 204 - Success


/ssl

支持的方法:

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

- 200 - Success, returns [SSL](about:blank#def_nginx_ssl_object) 
  • DELETE - 重置SSL统计信息重置SSL握手和会话重用的计数器。可能的回应:
- 204 - Success


/slabs/

支持的方法:

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

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


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

支持的方法:

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

- 200 - Success, returns [Shared memory zone with slab allocator](about:blank#def_nginx_slab_zone) 
- 404 - Slab not found (`SlabNotFound`), returns [Error](about:blank#def_nginx_error) 
  • DELETE- 重置板块统计信息重置每个内存插槽的“ reqs”和“ fails”度量标准。可能的回应:
- 204 - Success
- 404 - Slab not found (`SlabNotFound`), returns [Error](about:blank#def_nginx_error) 
- 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error) 


/http/

支持的方法:

  • GET - 返回HTTP相关端点列表返回第一级HTTP端点列表。可能的回应:
- 200 - Success, returns an array of strings


/http/requests

支持的方法:

  • GET - 返回HTTP请求统计信息返回客户端HTTP请求的状态。请求参数: fields(string,可选)限制了客户端的HTTP请求的统计数据字段将被输出。可能的回应:
- 200 - Success, returns [HTTP Requests](about:blank#def_nginx_http_requests) 
- 204 - Success
- 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error) 


/http/server_zones/

支持的方法:

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

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


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

支持的方法:


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

- 200 - Success, returns [HTTP Server Zone](about:blank#def_nginx_http_server_zone) 
- 404 - Server zone not found (`ServerZoneNotFound`), returns [Error](about:blank#def_nginx_error) 
  • DELETE - 重置HTTP服务器区域的统计信息重置特定HTTP服务器区域中接受和丢弃的请求,响应,接收和发送字节的统计信息。可能的回应:
- 204 - Success
- 404 - Server zone not found (`ServerZoneNotFound`), returns [Error](about:blank#def_nginx_error) 
- 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error) 


/http/caches/

支持的方法:


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

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


/http/upstreams/

支持的方法:


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

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


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

支持的方法:


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

- 200 - Success, returns [HTTP Upstream](about:blank#def_nginx_http_upstream) 
- 400 - Upstream is static (`UpstreamStatic`), returns [Error](about:blank#def_nginx_error) 
- 404 - Upstream not found (`UpstreamNotFound`), returns [Error](about:blank#def_nginx_error) 
  • DELETE - 重置HTTP上游服务器组的统计信息重置上游服务器组中每个上游服务器的统计信息和队列统计信息。可能的回应:
- 204 - Success
- 400 - Upstream is static (`UpstreamStatic`), returns [Error](about:blank#def_nginx_error) 
- 404 - Upstream not found (`UpstreamNotFound`), returns [Error](about:blank#def_nginx_error) 
- 405 - Method disabled (`MethodDisabled`), returns [Error](about:blank#def_nginx_error) 


相关文章
|
27天前
|
缓存 应用服务中间件 网络安全
Nginx中配置HTTP2协议的方法
Nginx中配置HTTP2协议的方法
64 7
|
4月前
|
负载均衡 应用服务中间件 API
Nginx:location配置模块的用法(一)
Nginx:location配置模块的用法(一)
543 2
|
2月前
|
缓存 JavaScript 安全
nodejs里面的http模块介绍和使用
综上所述,Node.js的http模块是构建Web服务的基础,其灵活性和强大功能,结合Node.js异步非阻塞的特点,为现代Web应用开发提供了坚实的基础。
117 62
|
2月前
|
应用服务中间件 nginx C++
nginx的cgi模块
nginx的cgi模块
41 0
|
2月前
|
JSON API 开发者
深入解析Python网络编程与Web开发:urllib、requests和http模块的功能、用法及在构建现代网络应用中的关键作用
深入解析Python网络编程与Web开发:urllib、requests和http模块的功能、用法及在构建现代网络应用中的关键作用
22 0
|
2月前
|
移动开发 网络协议 C语言
详解 httptools 模块,一个 HTTP 解析器
详解 httptools 模块,一个 HTTP 解析器
38 0
|
4月前
|
缓存 应用服务中间件 nginx
安装nginx-http-flv-module模块
本文介绍如何为Nginx安装`nginx-http-flv-module`模块。此模块基于`nginx-rtmp-module`二次开发,不仅具备原模块的所有功能,还支持HTTP-FLV播放、GOP缓存、虚拟主机等功能。安装步骤包括:确认Nginx版本、下载相应版本的Nginx与模块源码、重新编译Nginx并加入新模块、验证模块安装成功。特别注意,此模块已包含`nginx-rtmp-module`功能,无需重复编译安装。
208 1
|
4月前
|
JSON API 数据格式
Python网络编程:HTTP请求(requests模块)
在现代编程中,HTTP请求几乎无处不在。无论是数据抓取、API调用还是与远程服务器进行交互,HTTP请求都是不可或缺的一部分。在Python中,requests模块被广泛认为是发送HTTP请求的最简便和强大的工具之一。本文将详细介绍requests模块的功能,并通过一个综合示例展示其应用。
|
4月前
|
负载均衡 应用服务中间件 Linux
在Linux中,常用的 Nginx 模块有哪些,常来做什么?
在Linux中,常用的 Nginx 模块有哪些,常来做什么?
|
4月前
|
前端开发 API 网络架构
【Azure 应用服务】能否通过 Authentication 模块配置 Azure AD 保护 API 应用?
【Azure 应用服务】能否通过 Authentication 模块配置 Azure AD 保护 API 应用?