Nginx基本操作
Nginx的基本操作。?
啟動(dòng)操作?
命令:
nginx -c /usr/nginx/conf/nginx.conf?
-c參數(shù)指定了要加載的nginx配置文件路徑。?
停止操作
停止操作是通過向nginx進(jìn)程發(fā)送信號(hào)(什么是信號(hào)請(qǐng)參閱linux文章)來進(jìn)行的?
步驟1:查詢nginx主進(jìn)程號(hào)?
ps -ef | grep nginx?
在進(jìn)程列表里面找master進(jìn)程,它的編號(hào)就是主進(jìn)程號(hào)了。?
步驟2:發(fā)送信號(hào)?
從容停止Nginx:?
kill -QUIT?主進(jìn)程號(hào)
快速停止Nginx:
kill -TERM?主進(jìn)程號(hào)?
強(qiáng)制停止Nginx:?
pkill -9 nginx?
另外,若在nginx.conf配置了pid文件存放路徑則該文件存放的就是Nginx主進(jìn)程號(hào),如果沒指定則放在nginx的logs目錄下。有了pid文件,我們就不用先查詢Nginx的主進(jìn)程號(hào),而直接向Nginx發(fā)送信號(hào)了,命令如下:?
kill -信號(hào)類型?'/usr/nginx/logs/nginx.pid'?
平滑重啟
如果更改了配置就要重啟Nginx,要先關(guān)閉Nginx再打開?不是的,可以向Nginx發(fā)送信號(hào),平滑重啟。?
平滑重啟命令:?
kill -HUP?主進(jìn)程號(hào)或進(jìn)程號(hào)文件路徑?
注意,修改了配置文件后最好先檢查一下修改過的配置文件是否正確,以免重啟后Nginx出現(xiàn)錯(cuò)誤影響服務(wù)器穩(wěn)定運(yùn)行。判斷Nginx配置是否正確命令如下:?
nginx -t -c /usr/nginx/conf/nginx.conf?
平滑升級(jí)
如果服務(wù)器正在運(yùn)行的Nginx要進(jìn)行升級(jí)、添加或刪除模塊時(shí),我們需要停掉服務(wù)器并做相應(yīng)修改,這樣服務(wù)器就要在一段時(shí)間內(nèi)停止服務(wù),Nginx可以在不停機(jī)的情況下進(jìn)行各種升級(jí)動(dòng)作而不影響服務(wù)器運(yùn)行。?
步驟1:?
如果升級(jí)Nginx程序,先用新程序替換舊程序文件,編譯安裝的話新程序直接編譯到Nginx安裝目錄中。?
步驟2:執(zhí)行命令?
kill -USR2?舊版程序的主進(jìn)程號(hào)或進(jìn)程文件名?
此時(shí)舊的Nginx主進(jìn)程將會(huì)把自己的進(jìn)程文件改名為.oldbin,然后執(zhí)行新版Nginx。新舊Nginx會(huì)同市運(yùn)行,共同處理請(qǐng)求。?
這時(shí)要逐步停止舊版Nginx,輸入命令:?
kill -WINCH?舊版主進(jìn)程號(hào)
慢慢舊的工作進(jìn)程就都會(huì)隨著任務(wù)執(zhí)行完畢而退出,新版的Nginx的工作進(jìn)程會(huì)逐漸取代舊版工作進(jìn)程。?
此時(shí),我們可以決定使用新版還是恢復(fù)到舊版。?
不重載配置啟動(dòng)新/舊工作進(jìn)程
kill -HUP?舊/新版主進(jìn)程號(hào)?
從容關(guān)閉舊/新進(jìn)程?
kill -QUIT?舊/新主進(jìn)程號(hào)?
如果此時(shí)報(bào)錯(cuò),提示還有進(jìn)程沒有結(jié)束就用下面命令先關(guān)閉舊/新工作進(jìn)程,再關(guān)閉主進(jìn)程號(hào):?
kill -TERM?舊/新工作進(jìn)程號(hào)?
這樣下來,如果要恢復(fù)到舊版本,只需要上面的幾個(gè)步驟都是操作新版主進(jìn)程號(hào),如果要用新版本就上面的幾個(gè)步驟都操作舊版主進(jìn)程號(hào)就行了。?
上面就是Nginx的一些基本的操作
本文轉(zhuǎn)自 wdy198622 51CTO博客,原文鏈接:http://blog.51cto.com/weimouren/1731589
總結(jié)
- 上一篇: PIX 几个配置注意的地方
- 下一篇: 解决nginx: [error] ope