美文网首页
二进制部署nginx(指定openssl)

二进制部署nginx(指定openssl)

作者: 自由如风才是少年的梦 | 来源:发表于2023-08-29 11:09 被阅读0次

参考文章:https://www.jianshu.com/p/8f93946135cb?v=1693365062413

pcre下载

http://sourceforge.net/projects/pcre/files/pcre/
https://sourceforge.net/projects/pcre/files/pcre/8.41/pcre-8.41.tar.gz/download

openssl下载

https://www.openssl.org/source/old/

nginx下载

http://nginx.org/download

配置环境

解压pcre(不要编译)

tar xf pcre-8.41.tar.gz -C /data

解压zlib(不要编译)

tar xf zlib-1.2.11.tar.gz -C /data

编译模块

解压openssl(不要编译)

tar xf openssl-1.0.1l.tar.gz -C /data 

ps:指定openssl版本,不指定版本默认使用服务器版本

解压headers-more-nginx-module(不要编译)

tar xf headers-more-nginx-module-0.34.tar.gz -C /data

ps: 隐藏nginx版本号

直接安装(方案一)

编译安装(停掉服务直接安装)

先停掉nginx服务,并将/data/nginx目录改名,
cd nginx-1.24.0

./configure --prefix=/data/nginx --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --with-pcre=/data/pcre-8.41 --with-openssl=/data/openssl-1.0.1l --with-zlib=/data/zlib-1.2.11  --add-module=/data/headers-more-nginx-module-0.34

make
make install

平滑升级(方案二)

查看原先nginx配置了那些模块

#根据自己的环境查看
/data/nginx/sbin/nginx -V
查看原nginx编译.png

编译nginx

cd nginx-1.24.0
./configure --prefix=/data/nginx --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --with-pcre=/data/pcre-8.41 --with-openssl=/data/openssl-1.0.1l --with-zlib=/data/zlib-1.2.11  --add-module=/data/headers-more-nginx-module-0.34

make   (千万不能执行make install)

剩下的就是平滑升级

mv /data/nginx/sbin/nginx{,.`date +%Y%m%d%H%M`}
cp ./objs/nginx /data/nginx/sbin/
/data/nginx/sbin/nginx -t
make upgrade
upgrade进行平滑升级.png

发送平滑信号就进程不在接受信号

kill -USR2 `cat /data/nginx/logs/nginx.pid`

停止旧的工作进程

kill -WINCH `cat /data/nginx/logs/nginx.pid.oldbin`

结束旧的master进程

kill -QUIT `cat /data/nginx/logs/nginx.pid.oldbin`

隐藏nginx版本

在nginx.conf文件中的http模块中加入

more_clear_headers 'Server';     #隐藏版本号
隐藏版本号.png

相关文章

网友评论

      本文标题:二进制部署nginx(指定openssl)

      本文链接:https://www.haomeiwen.com/subject/nhmoydtx.html