怎麼能在不中止服務的狀況下,平滑的升級nginx?下面告訴你答案,其實很簡單nginx
1.下載nginx新版本,並解壓,進入解壓的目錄進程
2.你要執行舊版本的nginx -V來查看舊版本編譯的時候,編譯了什麼模塊,配置了什麼信息。編譯
3.編譯新版本的nginx,./configure .....,這裏省略的內容與舊版本在編譯時是同樣的,這個內容就是nginx -V查看到的內容,配置
./configure ......下載
make 請求
這裏注意了,執行到了make這句的時候就中止了,不要make install程序
4.執行完make後,備份舊版本nginx的可執行程序,就是在安裝目錄下面sbin下面的nignx升級
mv sbin/nginx sbin/nginx.oldmake
5.備份好後,就把新版本obj目錄下面編譯生成的nginx複製到sbin/下面去,也就是上一步備份的目錄備份
6.最後一步,就是在新版本的nginx目錄下面執行make upgrade;
make upgrade,這個命令其實就是一個過程:
先 kill -USER2 舊版本主進程號,升級nginx
接着再kill -QUIT 舊版本的主進程號,通知舊版本退出,再也不接受新請求