Nginx常用模块及作用


Nginx模块详解

nginx模块分为两种,官方和第三方 ,我们通过命令 nginx -V 查看 nginx已经安装的模块!

[root@localhost ~]# nginx -V

nginx version: nginx/1.15.9
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC) 
configure arguments: --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
Nginx模块名称 模块作用
ngx_http_access_module 四层基于IP的访问控制,可以通过匹配客户端源IP地址进行限制
ngx_http_auth_basic_module 状态页,使用basic机制进行用户认证,在编译安装nginx的时候需要添加编译参数-- withhttp_stub_status_module,否则配置完成之后监测会是提示语法错误
ngx_http_stub_status_module 状态统计模块
ngx_http_gzip_module 文件的压缩功能
ngx_http_gzip_static_module 静态压缩模块
ngx_http_ssl_module nginx 的https 功能
ngx_http_rewrite_module 重定向模块,解析和处理rewrite请求
ngx_http_referer_module 防盗链功能,基于访问安全考虑
ngx_http_proxy_module 将客户端的请求以http协议转发至指定服务器进行处理
ngx_stream_proxy_module tcp负载,将客户端的请求以tcp协议转发至指定服务器处理
ngx_http_fastcgi_module 将客户端对php的请求以fastcgi协议转发至指定服务器助理
ngx_http_uwsgi_module 将客户端对Python的请求以uwsgi协议转发至指定服务器处理
ngx_http_headers_module 可以实现对头部报文添加指定的key与值
ngx_http_upstream_module 负载均衡模块,提供服务器分组转发、权重分配、状态监测、调度算法等高级功能
ngx_stream_upstream_module 后端服务器分组转发、权重分配、状态监测、调度算法等高级功能
ngx_http_fastcgi_module 实现通过fastcgi协议将指定的客户端请求转发至php-fpm处理
ngx_http_flv_module 为flv伪流媒体服务端提供支持

1. --with-http_stub_status_module

该模块展示了当前nginx的客户端状态信息

重启nginx

其中 : Active connections : 表示nginx当前活跃的连接数

server accepts handled requests: 有三个值,第一个值表示 nginx处理的握手次数,第二个值表示nginx处理的连接次数,第三个值表示总的请求数,正常来说 握手次数和连接次数的值应该相等,意味着没有连接丢失

2. --with-http_random_index_module

2.1 现在 以前创建的目录 /opt/app/ 下创建一个目录 code,在里面编写3个html,3个html里面只要设置背景颜色即可,如下

2.2 配置 default.conf文件,如下修改两个地方

2.3 测试

重新加载 nginx服务,使用命令 service nginx reload;

在浏览器中输入ip,可以看到出现不同背景颜色的网页,多刷新几次,看到效果,注意一点,在配置的随机目录下,如果编写了一个隐藏文件,比如 .4.html文件,这样的隐藏文件是不会被随机到的,各位有兴趣,可以测试。

3. --with-http_sub_module

3.1 在 code目录下 新建一个 sub_filter.html文件,内容如下

3.2 修改 default.conf文件,修改其中的根目录

3.3 重新加载服务器,输入网址访问

3.4 现在我要配置 sub_module 模块,让返回的内容变更

再次修改 default.conf 文件,在 location下 配置 要替换的文本 和替换后的文本,如下

重新加载后,再次输入网址,发现内容已经被替换


原文链接:https://www.cnblogs.com/CMX_Shmily/p/11599753.html