● Nginx 的啓動
假設 nginx 安裝在 /usr/local/nginx 目錄中,那麼啓動 nginx 的命令就是:
[root@localhost ~]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
參數 "-c" 指定了配置文件的路徑,若是不加 "-c" 參數,Nginx 會默認加載其安裝目錄的 conf 子目錄中的 nginx.conf 文件。html
● Nginx 的中止
nginx 的中止方法有不少,通常經過發送系統信號給 nginx 的主進程的方式來中止 nginx。nginx
(1) 從容中止 nginx
服務器
● Nginx 的平滑重啓
若是改變了 nginx 的配置文件,想重啓 nginx,一樣能夠發送系統信號給 nginx 主進程的方式來進行。不過,重啓以前,要確認 nginx 配置文件的語法是否正確的。Linux下Nginx+PHP+MySQL配置詳解。不然 nginx 將不會加載新的配置文件。能夠經過如下命令來判斷配置文件是否正確:
ide
● Nginx 的信號控制
spa
TERM, INT 快速關閉日誌
QUIT 從容關閉htm
HUP 平滑重啓,從新加載配置文件教程
USR1 從新打開日誌文件,在切割日誌時用途較大進程
USR2 平滑升級可執行程序get
WINCH 從容關閉工做進程
(1) 使用新的可執行程序替換舊的可執行程序,對於編譯安裝的 nginx,能夠將新版本編譯安裝到舊版本的 nginx 安裝路徑中。替換以前,最好備份一下舊的可執行文件。
(2) 發送如下指令:
(4) 此時,新、舊版本的 nginx 實例會同時運行,共同處理輸入的請求。要逐步中止舊版本的 nginx 實例,你必須發送 WINCH 信號給舊的主進程,而後,它的工做進程就將開始從容關閉:
(6) 這時候,咱們能夠決定是使用新版本,仍是恢復到舊版本:
kill -HUP 【舊的主進程號】:nginx 將在不重載配置文件的狀況下啓動它的工做進程
kill -QUIT 【新的主進程號】:從容關閉其工做進程(worker process)
kill -TERM 【新的主進程號】:強制退出
kill 【新的主進程號或舊的主進程號】:若是由於某些緣由新的工做進程不能退出,則向其發送 kill 信號
新的主進程退出後,舊的主進程會移除 .oldbin 後綴,恢復爲它 的 .pid 文件,這樣,一切就恢復到升級以前了。若是嘗試升級成功,而你也但願保留新的服務器時,可發送 QUIT 信號給舊的主進程,使其退出而只留下新的服務器運行, .oldbin 後綴文件會被移除。