赞
踩
一、安装包的下载
(1)Nginx的下载(这里下载最新的稳定版本1.26.1):下载地址nginx: downloadhttps://nginx.org/en/download.html
(3)OpenSSL的下载(这里选择下载最新稳定版本3.3.1):[ Downloads ] - /source/index.htmlhttps://www.openssl.org/source/,主要解决谷歌新版浏览器访问提示“ERR SSL PROTOCOL ERROR”的问题
二、OpenSSL的安装
(1)查看OpenSSL的版本
(2)查看OpenSSL的路径
(3)备份OpenSSL文件
- sudo mv /usr/bin/openssl /usr/bin/openssl_old
-
- sudo mv /usr/include/openssl /usr/include/openssl_old
(4)解压OpenSSL并配置安装目录
tar –zxvf openssl-3.3.1.tar.gz
(5)切换到解压好的openssl目录
cd openssl-3.3.1/
(6)配置openssl安装目录
.config –prefix=/usr/local/openssl
(7)编译与安装
sudo make && sudo make install
等待完成即可
(8)创建软链接
说明:创建的软链接和之前没升级通过whereis openssl保持一致即可。
- ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
-
- ln -s /usr/local/openssl/include/openssl /usr/include/openssl
(9)添加动态链接库数据(注意需要切到root用户才有权限)
echo "/usr/local/openssl/lib64/" >> /etc/ld.so.conf
检查一下,已经在/etc/ld.so.conf中存在:
- include ld.so.conf.d/*.conf
-
- /usr/local/openssl/lib64/
(10)更新动态链接库:
sudo ldconfig –v
(11)验证openssl
查看openssl版本 openssl version -a会显示全面详细信息
- OpenSSL 3.3.1 4 Jun 2024 (Library: OpenSSL 3.3.1 4 Jun 2024)
-
- built on: Thu Jun 13 02:55:45 2024 UTC
-
- platform: linux-x86_64
-
- options: bn(64,64)
-
- compiler: gcc -fPIC -pthread -m64 -Wa,--noexecstack -Wall -O3 -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_BUILDING_OPENSSL -DNDEBUG
-
- OPENSSLDIR: "/usr/local/openssl/ssl"
-
- ENGINESDIR: "/usr/local/openssl/lib64/engines-3"
-
- MODULESDIR: "/usr/local/openssl/lib64/ossl-modules"
-
- Seeding source: os-specific
-
- CPUINFO: OPENSSL_ia32cap=0xfefa320b5f8bffff:0x800d19e4fbb
(12)到此openssl升级完成
三、Nginx新版本的安装
(1)将下载的好Nginx-1.26.1解压并进入Nginx-1.26.1目录
- tar -zxvf Ninx-1.26.1.gz
-
- cd /opt/Nginx-1.26.1/
(2)查看旧版本Nginx配置的编译文件并复制configure arguments,将openssl对应的版本替换一下
- nginx version: nginx/1.11.3
-
- built by gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.9)
-
- built with OpenSSL 1.0.1 14 Mar 2012
-
- TLS SNI support enabled
-
- configure arguments: --prefix=/usr/local/nginx --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre=../pcre-8.41 --with-openssl=../openssl-1.0.1
(3)配置Nginx新版本的编译参数
[root@web03 nginx-1.24.0]# ./configure /usr/local/nginx --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre=../pcre-8.41 --with-openssl=../openssl-3.3.1
(4)执行make,不要make install
[root@web03 nginx-1.24.0]# make
(5)将nginx-1.26.0目录下的nginx放到/usr/local/nginx/sbin/目录下
- [root@web03 sbin]# mv /opt/nginx-1.26.0/objs/nginx /usr/local/nginx/sbin/
-
- [root@web03 sbin]# ls
-
- nginx
-
- [root@web03 sbin]#
(6)生成新的nginx master进程
- [root@web03 ~]# cd /usr/local/nginx/logs/
-
- [root@web03 logs]# cat nginx.pid
-
- 15210
-
- [root@web03 logs]# kill -USR2 15210
-
- [root@web03 logs]# ls
-
- access.log error.log nginx.pid nginx.pid.oldbin
-
- [root@web03 logs]#
可以看到,当前的nginx进程文件自动命名为nginx.pid.oldbin,又生成了一个新的nginx.pid文件
(7)生成新的nginx master进程
- [root@web03 logs]# cat nginx.pid.oldbin
-
- 15210
-
- [root@web03 logs]# kill -WINCH 15210
-
- [root@web03 logs]# kill -QUIT 15210
-
- [root@web03 logs]# ls
-
- access.log error.log nginx.pid
-
- [root@web03 logs]#
旧版本的nginx进程已经被新版本的nginx进程替代
(8)可以看到当前版本已经升级到了1.26.1
- [root@web03 logs]# /usr/local/nginx/sbin/nginx -V
-
- nginx version: nginx/1.26.1
-
- built by gcc 7.4.0 (Ubuntu 7.4.0-1ubuntu1~18.04.1)
-
- built with OpenSSL 3.3.1 4 Jun 2024
-
- TLS SNI support enabled
-
- configure arguments: --prefix=/usr/local/nginx --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre=../pcre-8.41 --with-openssl=../openssl-3.3.1
(9)访问页面测试:输入网站即可
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。