ngnix 啓動重啓

也許你不知道什麼是Nginx,Nginx是一個WEB服務器,如IIS那樣,現在好多門戶都在使用了Nginx作爲WEB服務器了,Nginx在Linux系統下跑很優秀,強過其它的WEB服務端,還可以做負載均衡,很不錯吧。

那下面主要總結一下Nginx的基本操作。 
啓動操作 
命令: 
nginx -c /usr/nginx/conf/nginx.conf 
-c參數指定了要加載的nginx配置文件路徑。 

停止操作 
停止操作是通過向nginx進程發送信號(什麼是信號請參閱linux文章)來進行的 
步驟1:查詢nginx主進程號 
ps -ef | grep nginx 
在進程列表裏面找master進程,它的編號就是主進程號了。 
步驟2:發送信號 
從容停止Nginx: 
kill -QUIT 主進程號 
快速停止Nginx: 
kill -TERM 主進程號 
強制停止Nginx: 
pkill -9 nginx 

另外,若在nginx.conf配置了pid文件存放路徑則該文件存放的就是Nginx主進程號,如果沒指定則放在nginx的logs目錄下。有了pid文件,我們就不用先查詢Nginx的主進程號,而直接向Nginx發送信號了,命令如下: 
kill -信號類型 '/usr/nginx/logs/nginx.pid' 

平滑重啓 
如果更改了配置就要重啓Nginx,要先關閉Nginx再打開?不是的,可以向Nginx發送信號,平滑重啓。 
平滑重啓命令: 
kill -HUP 住進稱號或進程號文件路徑 

注意,修改了配置文件後最好先檢查一下修改過的配置文件是否正確,以免重啓後Nginx出現錯誤影響服務器穩定運行。判斷Nginx配置是否正確命令如下: 
nginx -t -c /usr/nginx/conf/nginx.conf 

平滑升級 
如果服務器正在運行的Nginx要進行升級、添加或刪除模塊時,我們需要停掉服務器並做相應修改,這樣服務器就要在一段時間內停止服務,Nginx可以在不停機的情況下進行各種升級動作而不影響服務器運行。 
步驟1: 
如果升級Nginx程序,先用新程序替換舊程序文件,編譯安裝的話新程序直接編譯到Nginx安裝目錄中。 
步驟2:執行命令 
kill -USR2 舊版程序的主進程號或進程文件名 
此時舊的Nginx主進程將會把自己的進程文件改名爲.oldbin,然後執行新版Nginx。新舊Nginx會同市運行,共同處理請求。 
這時要逐步停止舊版Nginx,輸入命令: 
kill -WINCH 舊版主進程號 
慢慢舊的工作進程就都會隨着任務執行完畢而退出,新版的Nginx的工作進程會逐漸取代舊版工作進程。 

此時,我們可以決定使用新版還是恢復到舊版。 
不重載配置啓動新/舊工作進程 
kill -HUP 舊/新版主進程號 
從容關閉舊/新進程 
kill -QUIT 舊/新主進程號 
如果此時報錯,提示還有進程沒有結束就用下面命令先關閉舊/新工作進程,再關閉主進程號: 
kill -TERM 舊/新工作進程號 

這樣下來,如果要恢復到舊版本,只需要上面的幾個步驟都是操作新版主進程號,如果要用新版本就上面的幾個步驟都操作舊版主進程號就行了。 

上面就是Nginx的一些基本的操作,希望以後Nginx能有更好的方法來處理這些操作,最好是Nginx的命令而不是向Nginx進程發送系統信號。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章