- 參考資料:[實戰Nginx_取代Apache的高性能Web服務器].張宴
Nginx平滑升級
1、 下載所需版本的Nginx
- wget http://www.nginx.org/download/nginx-1.2.3.tar.gz
2、 獲取舊版本nginx的configure選項
- /opt/nginx/sbin/nginx -V
3、 編譯新版本的nginx
- cd /opt/software/nginx
- tar xvf nignx-1.2.3.tar.gz
- cd nginx-1.2.3
- ./configure –prefix=/opt/nginx –user=www –group=www \
- –with-http_stub_status_module --with-http_ssl_module
- make
4、 備份舊版本的nginx可執行文件,複製新版本的nginx這行文件
- mv /opt/nginx/sbin/nginx /opt/nginx/sbin/nginx.old
- cp objects/nginx /opt/nginx/sbin/nginx
5、 測試新版本nginx是否正常
- /opt/nginx/sbin/nginx –t –c /opt/nginx/conf/nginx.conf
6、 平滑升級nginx
- kill –USR2 `cat /opt/nginx/log/nginx.pid`
7、 舊版本Nginx的pid變爲oldbin,這是舊版本和新版本的nginx同時運行,過一段時間等就nginx處理完用戶請求後,執行下面操作
8、 從容關閉舊版本的Nginx進程
- kill –WINCH `cat /opt/nginx/log/nginx.oldbin`
9、 決定是否升級到新版的nginx
- kill –HUP `cat /opt/nginx/log/nginx.oldbin` ##nginx在不重載配置文件啓動工作進程
- kill –QUIT `cat /opt/nginx/log/nginx.oldbin` ##關閉舊版nginx
10、驗證nginx是否升級成功
- /opt/nginx/sbin/nginx –V ###顯示下圖則升級成功