九、stub_status模块功能及第三方echo模块的加载
ngx_http_stub_status_module模块功能
主要功能是记录Nginx的基本访问状态信息,让使用者了解Nginx的工作状态,例如连接数等信息。要使用状态模块,在编译Nginx时必须增加http_stub_status_module模块来支持。
1、查看该模块是否安装
[root@inode3 ~]# nginx -V nginx version: nginx/1.16.0 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC) built with OpenSSL 1.0.2k-fips 26 Jan 2017 TLS SNI support enabled configure arguments: --prefix=/usr/local/nginx \ --user=www --group=www \ --with-http_ssl_module \ --with-http_stub_status_module
2、配置nginx status
生成status配置
vim /usr/local/nginx/conf/vhost/ip.conf server { listen 80; server_name 192.168.32.101; location / { root html/ip; index index.html index.htm; } location =/status { stub_status on; } }
3、重新加载nginx配置文件
nginx -t
nginx -s reload
4、访问status页面
[root@inode3 vhost]# curl 192.168.32.103/status Active connections: 1 server accepts handled requests 19 19 21 Reading: 0 Writing: 1 Waiting: 0
页面信息说明
Active connections: 1 #nginx正在处理的活动连接数 1个 server :表示Nginx启动到现在共处理了19个连接; accepts:表示Nginx启动到现在共成功创建了19次握手; handled requests:表示总共处理了21次请求; Reading为Nginx读取到客户端的Header信息数。 Writing为Nginx返回给客户端的Header信息数。 Waiting为Nginx已经处理完正在等候下一次请求指令的驻留连接。在开启keep-alive的情况下,这个值等于active-(reading+writing)
给nginx添加ngx_http_gunzip_module模块
查看现在nginx的编译参数中没有该模块的
[root@inode3 ~]# nginx -V nginx version: nginx/1.16.0 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC) built with OpenSSL 1.0.2k-fips 26 Jan 2017 TLS SNI support enabled configure arguments: --prefix=/usr/local/nginx \ --user=www \ --group=www \ --with-http_ssl_module --with-http_stub_status_module
添加模块步骤:
第一步:
下载相同版本的nginx源码包并解压进入 cd /server/tools wget -c http://nginx.org/download/nginx-1.16.0.tar.gz tar -xf nginx-1.16.0.tar.gz cd nginx-1.16.0
第二步:源码编译安装,在编译时添加ngx_http_gunzip_module模块
./configure --prefix=/usr/local/nginx --user=www --group=www \ --with-http_ssl_module --with-http_stub_status_module \ --with-http_gunzip_module make #注意不要make install
第三步:备份源nginx的命令文件
cd /usr/local/nginx/sbin mv nginx nginx.old
第四步:拷贝新编译好的nginx命令文件到/usr/local/nginx/sbin目录
cd /server/tools/nginx-1.16.0/objs cp nginx /usr/local/nginx/sbin
第五步:重新加载nginx配置文件
nginx -s reload
第六步:查看编译模块信息
[root@inode3 sbin]# nginx -V nginx version: nginx/1.16.0 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC) built with OpenSSL 1.0.2k-fips 26 Jan 2017 TLS SNI support enabled configure arguments: --prefix=/usr/local/nginx \ --user=www --group=www --with-http_ssl_module \ --with-http_stub_status_module --with-http_gunzip_module
./configure --prefix=/usr/local/nginx --user=www --group=www \ --with-http_ssl_module --with-http_stub_status_module \ --with-http_gunzip_module -add-module=模块的绝对路径
添加第三方echo模块
./configure \ --prefix=/apps/nginx \ --user=nginx --group=nginx \ --with-http_ssl_module \ --with-http_v2_module \ --with-http_realip_module \ --with-http_stub_status_module \ --with-http_gzip_static_module \ --with-http_perl_module \ --with-pcre \ --with-stream \ --with-stream_ssl_module \ --with-stream_realip_module \ --add-module=/usr/local/src/echo-nginx-module #echo模块的路径 make && make install
注意:添加第三方模块,需要nginx -s stop
I have a dream so I study hard!!!