在已编译安装nginx上动态添加模块
一、添加nginx模块
找到安装nginx的源码根目录,如果没有的话下载新的源码
wget http://nginx.org/download/nginx-1.8.1.tar.gz 查看ngixn版本极其编译参数
../sbin/nginx -V
nginx version: nginx/1.8.1
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-28) (GCC)
built with OpenSSL 1.0.2k-fips 26 Jan 2017
TLS SNI support enabled
configure arguments: --user=www --group=www --prefix=/application/nginx-1.8.1 --with-http_stub_status_module --with-http_ssl_module 停止ngixn
systemctl stop nginx 进入nginx源码目录
cd nginx-1.8.1/ 以下是重新编译的代码和模块(重新编译增加了--with-file-aio --with-http_realip_module模块)
./configure --user=www --group=www --prefix=/application/nginx-1.8.1 --with-http_stub_status_module --with-http_ssl_module --with-file-aio --with-http_realip_module make 千万别make install,否则就覆盖安装了 make完之后在objs目录下就多了个nginx,这个就是新版本的程序了 备份旧的nginx程序
cp /application/nginx-1.8.1/sbin/nginx /application/nginx-1.8.1/sbin/nginx.20180826 把新的nginx程序覆盖旧的
cp objs/nginx /application/nginx-1.8.1/sbin/nginx 测试新的nginx程序是否正确
/application/nginx/sbin/nginx -t
nginx: the configuration file /application/nginx-1.8.1/conf/nginx.conf syntax is ok
nginx: configuration file /application/nginx-1.8.1/conf/nginx.conf test is successful 平滑重启nginx
systemctl reload nginx 查看ngixn版本及其编译参数
[root@nginx nginx-1.8.1]# /application/nginx/sbin/nginx -V
nginx version: nginx/1.8.1
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-28) (GCC)
built with OpenSSL 1.0.2k-fips 26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/application/nginx-1.8.1 --with-http_stub_status_module --with-http_ssl_module --with-file-aio --with-http_realip_module
说明:如果使用/application/nginx/sbin/nginx -s reload启动的话可以正常启动,由于我使用的是systemctl reload nginx启动的,会提示“Job for nginx.service invalid.”,我这边的做法是重启下服务器就可以了。
二、添加nginx第三方模块
这里以安装第三方ngx_http_google_filter_module模块为例
nginx的模块是需要重新编译nginx,而不是像apache一样配置文件引用.so 下载第三方扩展模块ngx_http_google_filter_module
[root@nginx ~]# cd /home/dm/tools/
[root@nginx tools]# git clone https://github.com/cuber/ngx_http_google_filter_module
如果提示没有git命令,使用yum install -y git安装即可 查看ngixn版本极其编译参数
../sbin/nginx -V
nginx version: nginx/1.8.1
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-28) (GCC)
built with OpenSSL 1.0.2k-fips 26 Jan 2017
TLS SNI support enabled
configure arguments: --user=www --group=www --prefix=/application/nginx-1.8.1 --with-http_stub_status_module --with-http_ssl_module 3. 加入需要安装的模块,重新编译,如这里添加-–add-module=/data/software/ngx_http_google_filter_module
--user=www --group=www --prefix=/application/nginx-1.8.1 --with-http_stub_status_module --with-http_ssl_module -–add-module=/data/software/ngx_http_google_filter_module make 千万别make install,否则就覆盖安装了 make完之后在objs目录下就多了个nginx,这个就是新版本的程序了 备份旧的nginx程序
cp /application/nginx-1.8.1/sbin/nginx /application/nginx-1.8.1/sbin/nginx.20180826 把新的nginx程序覆盖旧的
cp objs/nginx /application/nginx-1.8.1/sbin/nginx 测试新的nginx程序是否正确
/application/nginx/sbin/nginx -t
nginx: the configuration file /application/nginx-1.8.1/conf/nginx.conf syntax is ok
nginx: configuration file /application/nginx-1.8.1/conf/nginx.conf test is successful 平滑重启nginx
systemctl reload nginx
在已编译安装nginx上动态添加模块的更多相关文章
- 不重装nginx实现动态添加模块
如果项目在提供服务的过程中,因为需求使然,需要对nginx进行模块的动态添加,可以按照如下流程进行操作 一.查看nginx当前已经安装了那些模块 1) 进入nginx执行文件目录 cd /usr/ ...
- linux环境手动编译安装Nginx实践过程 附异常解决
1.下载nginx源码包并解压 可在http://nginx.org/en/download.html下载.tar.gz的源码包,如(nginx-1.4.7.tar.gz) 或者使用云盘下载 ht ...
- 手动编译安装nginx
1.下载nginx源码包并解压 可在http://nginx.org/en/download.html下载.tar.gz的源码包,如(nginx-1.4.7.tar.gz) 下载后通过tar -xvz ...
- 源码编译安装nginx详细步骤
1.下载nginx源码包并解压 可在http://nginx.org/en/download.html下载.tar.gz的源码包,如(nginx-1.4.7.tar.gz) 下载后通过tar -xvz ...
- 【Nginx】如何为已安装的Nginx动态添加模块?看完我懂了!!
写在前面 很多时候,我们根据当时的项目情况和业务需求安装完Nginx后,后续随着业务的发展,往往会给安装好的Nginx添加其他的功能模块.在为Nginx添加功能模块时,要求Nginx不停机.这就涉及到 ...
- 【01】Nginx:编译安装/动态添加模块
写在前面的话 说起 Nginx,别说运维,就是很多开发人员也很熟悉,毕竟如今已经 2019 年了,Apache 更多的要么成为了历史,要么成为了历史残留. 我们在提及 Nginx 的时候,一直在强调他 ...
- 十三、给已安装的nginx动态添加模块
给已安装的nginx动态添加模块说明:已经安装好的nginx,需要添加一个未被编译安装的模块,需要怎么弄呢?具体:这里以安装 --with-http_ssl_module模块为例nginx的模块是需要 ...
- Linux下Nginx的安装、升级及动态添加模块
系统基于ubuntu server 14.04.4 amd64 安装 第一步 下载并解压Nginx压缩包 从Nginx官网下载Nginx,或者在Linux上执行wget http://nginx.or ...
- Linux下,Nginx的安装、升级及动态添加模块
系统基于ubuntu server 14.04.4 amd64 安装 第一步 下载并解压Nginx压缩包 从Nginx官网下载Nginx,或者在Linux上执行wget http://nginx.or ...
随机推荐
- SpringMVC注解校验
spring注解式参数校验 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/jinzhencs/article/details/5168283 ...
- 关于本科毕业设计期间对数据挖掘工具rapidminer的使用体验和心得,案例分享
1.前言:本科生毕业设计有好多人说没有什么用处,自己又做不出来什么新东西,全是抄抄改改的,浪费大家时间.但是对此事我的态度不同,我觉得就像我们小时候玩过家家一样,别的孩子都在玩,我不参与进去显得会有遗 ...
- js+canvas(H5)实现小球移动小demo
*canvas提供画布,大小自定义,js得到画布,从画布对象通过getContext('2d')来得到画笔,然后就可以开始画了 代码: <!DOCTYPE html> <html l ...
- UILabel和UIbutton(富文本)封装方法
/** 方法说明:设置label的富文本属性 参数说明:contentStr富文本内容 textColor字体颜色 rangeSet设置字体颜色及大小的位置 */ - (UILabel *)backf ...
- Tinghua Data Mining 9
关联规则,营销购物 空缺 协同过滤
- 解析 MFC 中的 FromHandle
MFC 对 Windows API 进行了封装,在很多方面都会提供便利.用 FromHandle 返回零时对象的指针,就可以调用各种类的方法.临时对象会在 OnIdle 中销毁.这里对 FromHan ...
- Yslow使用方法
Yslow是雅虎开发的基于网页性能分析浏览器插件,从年初我使用了YSlow后,改变了博客模板大量冗余代码,不仅提升了网页的打开速度,这款插件还帮助我分析了不少其他网站的代码,之前我还特意写了提高网站速 ...
- 【Web应用-网络连接】关于 Azure Web 应用 4 分钟空闲连接的限制
Azure Web 应用后台在处理耗时较长的请求时,并且在此期间,客户端和 Azure Web 应用没有数据交互,即 TCP 连接一直处于空闲状态,此种情况超过 4 分钟后,Azure Web 应用会 ...
- Java中枚举类型Enum的一种使用方式
枚举类定义如下: public enum Status { SCUUESS("1", "成功"), FAILED("2", "失败 ...
- HDU 5469 Antonidas (树形DP,暴力)
题意: 给一棵n节点的树图,每个点都是一个小写字母,要求找到两个点(a,b),从a->b的路径上形成了一个字符串为s.给出s,问是否存在这样的点对. 思路: 考虑一个点,要么从该点出发,要么在该 ...