Nginx动态添加模块

写在前面的话

前面写到Nginx的编译安装与配置,配置过程比较简单,只是进行了最基础最简单的配置。最近打算给网站加个ssl,重启nginx却提示缺少the "ssl" parameter requires ngx_http_ssl_module,这TM就尴尬了,之前配置的时候没加这句--with-http_ssl_module,现在用到了,于是就想不想重装nginx的情况下把这个模块加上。

其实步骤比较简单:

  1. 安装要加的模块

  2. 查看原来的配置参数

  3. 加入新参数,重新编译

  4. 替换nginx二进制文件

详细步骤

安装要加的模块

我要加的模块依赖openssl,但是已经安装,此步忽略。

查看原来的配置参数

执行命令:

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

然后可以看到如下信息:

ginx version: nginx/1.10.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-4) (GCC)
built with OpenSSL 1.0.1e-fips 11 Feb 2013
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --conf-path=/etc/nginx/nginx.conf --user=nginx --group=nginx

configure arguments:就是我原来的配置信息。

加入新参数,重新编译

下面重新编译吧,具体怎么编译查看之前得文章吧这篇

新的编译参数

--prefix=/usr/local/nginx --conf-path=/etc/nginx/nginx.conf --user=nginx --group=nginx --with-http_ssl_module

然后make,注意<span style=”color:red”>不要</span>make install,你make install的话就是重新安装了。

替换nginx二进制文件

cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
cp ./objs/nginx /usr/local/nginx/sbin/

我替换之前先备份了执行文件,好习惯?

至此,愉快的重启吧,提示下,重新编译之前最好把nginx进程都干死哦!

    原文作者:lbool
    原文地址: https://segmentfault.com/a/1190000005666802
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞