nginx的隐藏版本号和平滑升级
·
1.隐藏版本号
sticky
基于cookie来进行负载转发,保证将来自同一cookie的访问始终定向到同一服务器响应,缺点就是需要编译模块,而且cookie需要浏览器支持。
下载编译模块






debug调试

修改版本相关信息 (src/core/nginx.h)


结果
简便方法
修改nginx配置文件,http节点下添加 server_tokens off
- vim /usr/local/nginx/conf/nginx.conf
- ....
- http {
- server_tokens off;
- .....
- ipvsadm -t
- ipvsadm -s reload
- curl localhost -I
2.nginx平滑升级
版本升级
1.20.1>>1.20.2

–prefix后面跟旧版nginx的路径(上面是我本地旧版的路径,替换成你的本地路径即可)

将旧版目录sbin下的nginx重命名为nginx.old
复制编译后的objs目录下的nginx到旧版nginx安装目录的sbin下

注意:更新的时候不能make install,否则会将nginx服务之前配置全部还原
kill -USR2 原master进程的pid 让旧版本的worker进程不再接受请求

WINCH 原来master进程的pid ,关闭原来进程的子进程,master不结束,防止更新失败
版本回退
kill -HUP 旧版本的master进程PID,重新唤起旧版本的master进程,让其接收请求
kill -USR2 5053,让新版本的master进程不接收请求
kill -WINCH 5053,关闭新版本的worker进程
实际在企业当中,如果更新失败立马就要回滚,并且更新的时候只能进行一次,失败立马回滚
更多推荐

所有评论(0)