1. 程式人生 > 其它 >CentOS下nginx版本平穩升級記錄

CentOS下nginx版本平穩升級記錄

起因:系統漏洞掃描出高危漏洞 :CVE-2019-9513 / CVE-2019-9511 / CVE-2019-9516,需升級nginx。

下載地址:https://nginx.org/en/download.html,選擇了穩定版本1.22.1。

將下載好的原始碼包上傳至伺服器路徑/usr/local/nginx(原nginx安裝路徑),並進入該目錄。

解壓:

tar -zxvf nginx-1.22.1.tar.gz

解壓後,進入nginx-1.22.1資料夾下進行編譯:

# 執行這步之前要先查一下編譯引數,要和之前的一致,查詢命令…/nginx/sbin/nginx -V(大V查引數,小v查版本)

例如:我之前的低版本的nginx安裝在/usr/local/nginx下,

 [approot@lnx-xxxx-xxx nginx]$ /usr/local/nginx/sbin/nginx -V
 nginx version: nginx/1.15.10
 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) 
 built with OpenSSL 1.0.2k-fips  26 Jan 2017
 TLS SNI support enabled
 configure arguments: --with-http_stub_status_module --with-http_ssl_module

可以看見configure arguments:xxxxx這些引數。

下面在nginx-1.22.1資料夾檔案下執行:

./configure --with-http_stub_status_module --with-http_ssl_module

注意:./configure後面的--prefix=......引數是你之前版本的nginx -V 下的configure arguments:xxxx內的引數 原封不動的貼上過來。回車執行後會執行一大堆東西。

接下來需要再執行make命令:

make #注意: 執行編譯,切記不要安裝也就是不要去執行 make install

執行完畢後下面就是需要備份原有nginx版本了

mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old

再把nginx-1.22.1的下面的nginx啟動檔案複製到/usr/local/nginx/sbin/下

cp /usr/local/nginx-1.22.1/objs/nginx /usr/local/nginx/sbin

到這裡基本以完成了 下面就是進行重啟nginx

cd /usr/local/nginx/sbin/nginx

#關閉之前服務

./nginx.old -s stop

#啟動新本版服務

./nginx

#不報錯說明已經完成重啟。可以正常使用了

#檢視版本

[approot@lnx-xxxx-xxx sbin]$ ./nginx -V
nginx version: nginx/1.22.1
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC)
built with OpenSSL 1.0.2k-fips 26 Jan 2017
TLS SNI support enabled
configure arguments: --with-http_stub_status_module --with-http_ssl_module

已更新至新版本,在原有的nginx服務上跟新版本,原有配置檔案不會受到影響,經過nginx的服務可正常使用。