博客
关于我
Nginx平滑添加模块
阅读量:793 次
发布时间:2023-02-15

本文共 1152 字,大约阅读时间需要 3 分钟。

hot3.png

Nginx已经编译安装并运行了一段时间, 然后某一天, 发现需要用到某个模块但当初没有编译, 这个时候怎么办呢? 

卸载重新安装肯定可以的, 如果Nginx版本没有变更的话, 则有一个相对平滑的方法来添加模块,下面以添加stream模块举例说明:

1, 查看当前已编译的模块, 发现configure没有stream

/usr/local/nginx/sbin/nginx -V

nginx version: nginx/1.10.1

......
configure arguments: --with-http_ssl_module --with-http_stub_status_module

2, 找到当初编译安装时的目录, 如果找不到就重新下载相同版本的Nginx源码包

cd nginx-1.10.1

3, 重新configure, 记得新增stream模块时,别忘了之前已有的模块

./configure --with-http_ssl_module --with-http_stub_status_module --with-stream

4, 然后执行make,  但千万不要执行make install

make

5, 备份之前老得Nginx启动文件

cp /usr/local/nginx/sbin/nginx  /usr/local/nginx/sbin/nginx-without-stream

6, 如果Nginx正在运行, 先停掉

/usr/local/nginx/sbin/nginx -s stop

7, 用最新编译的Nginx启动文件替换当前的

cp objs/nginx /usr/local/nginx/sbin/nginx  //是否确认请输入 y

8, 再次查看已编译的模块, 发现有stream

/usr/local/nginx/sbin/nginx -V

......

configure arguments: --with-http_ssl_module --with-http_stub_status_module --with-stream

9, 测试stream模块是否支持

在nginx.conf下添加一个tcp监听, 如下是一个内网转外网的邮件代理配置.

stream {    upstream mail_server {	    server smtp.163.com:25;    }    server {        listen       25;        proxy_pass   mail_server;    }   }

 

转载于:https://my.oschina.net/wangxu3655/blog/2989054

你可能感兴趣的文章
Netty工作笔记0066---Netty核心模块内容梳理
查看>>
Netty工作笔记0068---Protobuf机制简述
查看>>
Netty工作笔记0070---Protobuf使用案例Codec使用
查看>>
Netty工作笔记0071---Protobuf传输多种类型
查看>>
Netty工作笔记0072---Protobuf内容小结
查看>>
Netty工作笔记0073---Neety的出站和入站机制
查看>>
Netty工作笔记0074---handler链调用机制实例1
查看>>
Netty工作笔记0075---handler链调用机制实例1
查看>>
Netty工作笔记0076---handler链调用机制实例3
查看>>
Netty工作笔记0077---handler链调用机制实例4
查看>>
Netty工作笔记0078---Netty其他常用编解码器
查看>>
Netty工作笔记0079---Log4j整合到Netty
查看>>
Netty工作笔记0080---编解码器和处理器链梳理
查看>>
Netty工作笔记0081---编解码器和处理器链梳理
查看>>
Netty工作笔记0082---TCP粘包拆包实例演示
查看>>
Netty工作笔记0083---通过自定义协议解决粘包拆包问题1
查看>>
Netty工作笔记0084---通过自定义协议解决粘包拆包问题2
查看>>
Netty工作笔记0085---TCP粘包拆包内容梳理
查看>>
Netty常用组件一
查看>>
Netty常见组件二
查看>>