nginx的第三方模块

第三模块是对nginx 的功能扩展,第三方模块需要在编译安装Nginx 的时候 使用参数 –add-module=PATH 指定路径添加,有的模块是由公司的开发人员针对业务需求定制开发的, 有的模块是开源爱好者开发好之后上传到github进行开源的模块,nginx的第三方模块需要从源码重新编译进行支持

nginx-module-vts 模块实现流量监控

https://github.com/vozlt/nginx-module-vts

git clone git://github.com/vozlt/nginx-module-vts.git
cd nginx-1.18.0/
./configure --prefix=/apps/nginx  --add-module=/usr/local/src/nginx-module-vts  #保留其他nginx功能需要编译添加对应参数
#注意:重新编译后,必须重启服务,不支持reload
systemctl restart nginx

echo 模块实现信息显示

开源的echo模块可以用来打印信息,变量等

https://github.com/openresty/echo-nginx-module


location /main {
     index index.html;
     default_type text/html;
     echo "hello world,main-->";
     echo $remote_addr ;
     echo_reset_timer;   #将计时器开始时间重置为当前时间
     echo_location /sub1;
     echo_location /sub2;
     echo "took $echo_timer_elapsed sec for total.";
 }

 location /sub1 {
     echo_sleep 1;
     echo sub1;
 }

 location /sub2 {
     echo_sleep 1;
     echo sub2;
 }