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,提示錯誤,表示沒有加載模塊進去