[Nginx] virtual host traffic status module
Hướng dẫn cài đặt cấu hình Nginx virtual host traffic status module
1. Cài đặt thư viện yum
yum groupinstall 'Development Tools' -y
yum install gcc-c++ flex bison yajl yajl-devel curl-devel curl GeoIP-devel doxygen zlib-devel pcre-devel
yum install lmdb lmdb-devel libxml2 libxml2-devel ssdeep ssdeep-devel lua lua-devel
yum install gcc-c++ flex bison yajl yajl-devel curl-devel curl GeoIP-devel doxygen zlib-devel pcre-devel
yum install lmdb lmdb-devel libxml2 libxml2-devel ssdeep ssdeep-devel lua lua-devel
2. Cài đặt nginx-module-vts
cd /usr/src
git clone https://github.com/vozlt/nginx-module-vts.git
git clone https://github.com/vozlt/nginx-module-vts.git
3. Cài đặt module
cd /usr/src
wget http://nginx.org/download/nginx-1.20.1.tar.gz
tar zxvf nginx-1.20.1.tar.gz
cd nginx-1.20.1
./configure --with-compat --add-dynamic-module=/usr/src/nginx-module-vts
make modules
cp objs/ngx_http_vhost_traffic_status_module.so /etc/nginx/modules
chmod 644 /etc/nginx/modules/ngx_http_vhost_traffic_status_module.so
wget http://nginx.org/download/nginx-1.20.1.tar.gz
tar zxvf nginx-1.20.1.tar.gz
cd nginx-1.20.1
./configure --with-compat --add-dynamic-module=/usr/src/nginx-module-vts
make modules
cp objs/ngx_http_vhost_traffic_status_module.so /etc/nginx/modules
chmod 644 /etc/nginx/modules/ngx_http_vhost_traffic_status_module.so
4. Load Nginx Module VTS, edit file /etc/nginx/nginx.conf và thêm cấu hình ngx_http_vhost_traffic_status_module
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
load_module modules/ngx_http_vhost_traffic_status_module.so;
pid /var/run/nginx.pid;
load_module modules/ngx_http_vhost_traffic_status_module.so;
Thêm vào thẻ http block đoạn code sau:
http {
vhost_traffic_status_zone;
include /etc/nginx/mime.types;
default_type application/octet-stream;
.......
gzip on;
.......
.......
}
vhost_traffic_status_zone;
include /etc/nginx/mime.types;
default_type application/octet-stream;
.......
gzip on;
.......
.......
}
Mặc định shared memory của vhost_traffic_status_zone là 2Mb. Để tăng giá trị của nó bạn thêm dòng code sau:
vhost_traffic_status_zone shared:vhost_traffic_status:32m;
5. Tạo htpasswd file, vd in /etc/nginx/.htpasswd
htpasswd -c /etc/nginx/.htpasswd userstatus
6. Sau đó thêm dòng code vào vhost của bạn:
server {
listen 443 ssl http2;
servername yourdomain.com;
.......
.......
location /status {
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/.htpasswd;
vhost_traffic_status_display;
vhost_traffic_status_display_format html;
}
.......
.......
}
listen 443 ssl http2;
servername yourdomain.com;
.......
.......
location /status {
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/.htpasswd;
vhost_traffic_status_display;
vhost_traffic_status_display_format html;
}
.......
.......
}
Chúc các bạn thành công.
Bình luận
Gửi