Nginx全新安装或加装模块--Nginx-module-vts监控多虚拟主机流量

0x00 环境说明

OS:Centos 7.9

Nginx版本:1.22.1

模块:nginx-module-vts-0.2.1.zip   下载地址:github.com

0x01 全新Nginx安装

下载nginx最新稳定版本,这里是Nginx-1.22.1

解压并编译安装

# 环境依赖
# rockylinux 9.3
dnf install -y gcc gcc-c++ pcre pcre-devel zlib zlib-devel perl-IPC-Cmd
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module --with-http_gzip_static_module --with-http_mp4_module --with-stream --with-http_realip_module --with-http_ v2_module --with-http_sub_module
# centos7.9
yum install -y gcc gcc-c++ pcre-devel pcre zlib zlib-devel
tar -zxvf nginx-1.22.1.tar.gz
cd nginx-1.22.1
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --add-module=/home/data/nginx-module-vts
make && make install

将nginx添加到system服务 ,路径自己修改

[Unit]

Description=nginx

After=network.target

[Service]

Type=forking

PIDFile=/usr/local/nginx/logs/nginx.pid

ExecStart=/usr/local/nginx/sbin/nginx

ExecReload=/usr/bin/kill -s HUP $MAINPID

ExecStop=/usr/bin/kill -s QUIT $MAINPID

PrivateTmp=true

[Install]

WantedBy=multi-user.target
#启动并开机启动
systemctl start nginx
systemctl enable nginx

0x02 添加模块 --已安装并运行了nginx

#进入到nginx源码目录
cd nginx-1.22.1
./configure --prefix=先前已安装编译的路径不变 --add-module=下载的新模块解压后的路径
make
#主要不要make install 否则会让之前的配置被替换为初识配置
#make后进入源码目录的子目录--objs中 先停止原来的nginx
cp nginx  已安装目录位置
#重新启动nginx
systemctl start nginx

0x03 修改nginx配置

#如果存在多配置文件,请在http语句块内 server语句块外加入如下语句
include /usr/local/nginx/conf/conf.d/*.conf
#上面conf.d默认不存在可以自行创建 路径也可以自定义
#在http语句块内加入虚拟主机流量监控的配置行
vhost_traffic_status_zone;

  vhost_traffic_status on;

  vhost_traffic_status_filter_by_host on;#按虚拟主机区分各自流量


#新增location uri,配置显示及格式
location /status {

vhost_traffic_status_display;

     vhost_traffic_status_display_format html;
}

#在浏览器访问http://ip地址:<port>/status 就可以看到流量监控

如图:

 

posted @ 2022-11-25 15:41  BlackData  阅读(272)  评论(0编辑  收藏  举报