NGINX 加載動態模塊(NGINX 1.9.11開始增長加載動態模塊支持)

NGINX 1.9.11開始增長加載動態模塊支持,今後再也不須要替換nginx文件便可增長第三方擴展。目前官方只有幾個模塊支持動態加載,第三方模塊須要升級支持纔可編譯成模塊。nginx

tinywan@tinywan:~/nginx-1.12.0$ ./configure --help | grep dynamic
  --with-http_xslt_module=dynamic    enable dynamic ngx_http_xslt_module
  --with-http_image_filter_module=dynamic
                                     enable dynamic ngx_http_image_filter_module
  --with-http_geoip_module=dynamic   enable dynamic ngx_http_geoip_module
  --with-http_perl_module=dynamic    enable dynamic ngx_http_perl_module
  --with-mail=dynamic                enable dynamic POP3/IMAP4/SMTP proxy module
  --with-stream=dynamic              enable dynamic TCP/UDP proxy module
  --with-stream_geoip_module=dynamic enable dynamic ngx_stream_geoip_module
  --add-dynamic-module=PATH          enable dynamic external module
  --with-compat                      dynamic modules compatibility

如上可看出官方支持9個動態模塊編譯,須要增長第三方模塊,使用參數--add-dynamic-module=便可。app

NGINX動態模塊語法:spa

load_module代理

Default: —code

配置段: mainserver

說明:版本必須>=1.9.11blog

實例:load_module modules/ngx_mail_module.so;接口

編譯安裝ip

 查看編譯生成的模塊it

tinywan@tinywan:/usr/local/nginx/modules$ ls
ngx_http_xslt_filter_module.so  ngx_rtmp_module.so  ngx_stream_module.so

查看編譯生成的模塊

 配置文件

不加載模塊配置文件nginx.conf 最末尾添加

worker_processes  1;
load_module "modules/ngx_rtmp_module.so";
load_module "modules/ngx_stream_module.so";
events {
    worker_connections  1024;
}

stream {
    upstream rtmp {
        server 127.0.0.1:8089; # 這裏配置成要訪問的地址
        server 127.0.0.2:1935;
        server 127.0.0.3:1935; #須要代理的端口,在這裏我代理一一個RTMP模塊的接口1935
    }
    server {
        listen 1935;  # 須要監聽的端口
        proxy_timeout 20s;
        proxy_pass rtmp;
    }
}

http {
    include       mime.types;
    ...
}

rtmp {
    server {
        listen 1935;

        application mytv {
            live on;
        }
    }
}

啓動Nginx,提示錯誤,表示沒有加載模塊進去

相關文章
相關標籤/搜索