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
 
 
# 启用ngx_http_addition_module支持,作为一个输出过滤器,支持不完全缓冲,分部分响应请求
--with-http_addition_module 

--with-http_auth_request_module 

# 启用ngx_http_dav_module支持(增加PUT,DELETE,MKCOL:创建集合,COPY和MOVE方法)默认情况下为关闭,需编译开启
--with-http_dav_module 

# 启用ngx_http_flv_module支持(提供寻求内存使用基于时间的偏移量文件)
--with-http_flv_module 

--with-http_gunzip_module 

# 启用ngx_http_gzip_static_module支持(在线实时压缩输出数据流)
--with-http_gzip_static_module 

--with-http_mp4_module 

# 启用ngx_http_random_index_module支持(从目录中随机挑选一个目录索引)
--with-http_random_index_module 

# 启用ngx_http_realip_module支持,这个模块允许从请求标头更改客户端的IP地址值,默认为关
--with-http_realip_module 

# 启用ngx_http_secure_link_module支持(计算和检查要求所需的安全链接网址)
--with-http_secure_link_module 

--with-http_slice_module

# 启用 ngx_http_ssl_module支持,仅支持https请求,需已经安装openssl 
--with-http_ssl_module 

# 启用ngx_http_stub_status_module支持(获取nginx自上次启动以来的工作状态)
--with-http_stub_status_module 

# 启用ngx_http_sub_module支持(允许用一些其他文本替换nginx响应中的一些文本)
--with-http_sub_module
 
--with-http_v2_module 

# 启用ngx_mail_ssl_module支持
--with-mail_ssl_module 

1.  --with-http_stub_status_module
该模块展示了当前nginx的客户端状态
配置语法: stub_status;
默认:没有配置
配置位置:server、location下面

然后重启nginx

 

其中 :  Active connections : 表示nginx当前活跃的连接数
     server accepts handled requests: 有三个值,第一个值表示 nginx处理的握手次数,第二个值表示nginx处理的连接次数,第三个值表示总的请求数,正常来说 握手次数和连接次数的值应该相等,意味着没有连接丢失
.  --with-http_random_index_module
从指定目录下随机选择一个目录索引,一般用余 主页多样化,给人主页在不断变化的感觉。
配置语法: random_index on|off;
默认值:   off
配置位置: location下
案例如下:
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
替换 服务器响应内容,比如浏览器向服务器发送请求,服务器返回一个response,可以通过这个模块配置 将返回的内容进行替换。
 
配置方法:有多种
第一种:
配置语法:sub_filter  string(要替换的文本呢)  string(要使用的文本)
默认配置:没有配置
配置位置:http、server、location下
 
第一种的实际配置demo
3.1 在 code目录下 新建一个 sub_filter.html文件,内容如下
3.2 修改 default.conf文件,修改其中的根目录
3.3 重新加载服务器,输入网址访问
3.4  现在我要配置  sub_module 模块,让返回的内容变更
再次修改 default.conf 文件,在 location下 配置 要替换的文本 和替换后的文本,如下
重新加载后,再次输入网址,发现内容已经被替换



猜你喜欢

转载自www.cnblogs.com/cxm123123form/p/11599753.html