NGINX 加载动态模块(NGINX 1.9.11开始增加加载动态模块支持)-阿里云开发者社区

开发者社区> Tinywan.> 正文

NGINX 加载动态模块(NGINX 1.9.11开始增加加载动态模块支持)

简介: NGINX 1.9.11开始增加加载动态模块支持,从此不再需要替换nginx文件即可增加第三方扩展。目前官方只有几个模块支持动态加载,第三方模块需要升级支持才可编译成模块。 tinywan@tinywan:~/nginx-1.
+关注继续查看

NGINX 1.9.11开始增加加载动态模块支持,从此不再需要替换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=即可。

NGINX动态模块语法:

load_module

Default: —

配置段: main

说明:版本必须>=1.9.11

实例:load_module modules/ngx_mail_module.so;

编译安装

 查看编译生成的模块

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,提示错误,表示没有加载模块进去

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
【ECS】好消息,弹性网卡支持添加辅助私网IP啦
背景 阿里云的ECS服务器,很早就支持了多网卡的挂载,卸载。近日我们又推出了新功能,每块弹性网卡又支持分配和回收多辅助私网IP地址啦。 实例列表页以及详情页支持管理主网卡的辅助私网IP 在实例列表页,在每一个实例的操作栏里点击 更多 -> 网络和安全组 -> 管理辅助私网IP,可看到,弹出了相应的...
4397 0
Java Class类的使用 和 动态加载类
Class类 1)在面向对象的世界里,万事万物皆对象。 类是对象,类是java.lang.Class类的实例对象。 There is a class named Class 2)Foo的实例对象如何表示 Foo foo1=new Foo();//foo1就表示出来了 ...
633 0
VB动态加载纯DLL资源
一、纯DLL资源的制作            打开VC6.0 创建一个基于win32的动态链接库   下一步中,要选择A sinmple Dll project              然后加载资源(注意对于超过256色的位图,VC不能编辑,不过这没关系)           可以加载位图、图标、字符串等,这是加载后的情况      资源添加完毕后,编译。
425 0
+关注
244
文章
1
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载