nginx學習筆記1 命令

2021-10-07 10:05:30 字數 2497 閱讀 2512

nginx -h 或-?

1、另行指定配置檔案的啟動方式

nginx -c tmpnginx.conf,這時,會讀取-c引數後指定的nginx.conf配置檔案來啟動nginx。

2、另行指定安裝目錄的啟動方式

nginx -p /usr/local/nginx/    使用-p引數指定nginx的安裝目錄

3、另行指定全域性配置項的啟動方式

nignx -g "pid var/nginx/test.pid;"  可以通過-g引數臨時指定一些全域性配置項,以使新的配置項生效。

上面這行命令意味著會把pid檔案寫到var/nginx/test.pid中。

-g引數的約束條件是指定的配置項不能與預設路徑下的nginx.conf中的配置項相衝突,否 則無法啟動。

另乙個約束條件是,以-g方式啟動的nginx服務執行其他命令行時,需要把-g引數也帶 上,否則可能出現配置項不匹配的情形。

4、測試配置資訊是否有錯誤

nginx -t

5、顯示版本資訊

nginx -v

6、顯示編譯階段的引數

7、快速地停止服務

nginx -s stop

使用-s stop可以強制停止nginx服務。-s引數其實是告訴nginx程式向正在執行的nginx服 務傳送訊號量,nginx程式通過nginx.pid檔案中得到master程序的程序id,再向執行中的 master程序傳送term訊號來快速地關閉nginx服務。

實際上,如果通過kill命令直接向nginx master程序傳送term或者int訊號,效果是一樣 的。

然後直接通過kill命令來傳送訊號:

kill -s sigterm 10800 或  kill -s sigint 10800

8、優雅地停止服務

如果希望nginx服務可以正常地處理完當前所有請求再停止服務,那麼可以使用-s quit參 數來停止服務。

nginx -s quit

該命令與快速停止nginx服務是有區別的。當快速停止服務時,worker程序與master程序 在收到訊號後會立刻跳出迴圈,退出程序。而「優雅」地停止服務時,首先會關閉監聽埠, 停止接收新的連線,然後把當前正在處理的連線全部處理完,最後再退出程序。

與快速停止服務相似,可以直接傳送quit訊號給master程序

來停止服務,其效果與執 行-s quit命令是一樣的。

kill -s sigquit

如果希望「優雅」地停止某個worker程序

,那麼可以通過向該程序傳送winch訊號來停止 服務。

kill -s sigwinch

9、使執行中的nginx重讀配置項並生效

nginx -s reload

事實上,nginx會先檢查新的配置項是否有誤,如果全部正確就以「優雅」的方式關閉, 再重新啟動nginx來實現這個目的。類似的,-s是傳送訊號,仍然可以用kill命令傳送hup信 號來達到相同的效果。

kill -s sighup

10、日誌檔案回滾

使用-s reopen引數可以重新開啟日誌檔案,這樣可以先把當前日誌檔案改名或轉移到其 他目錄中進行備份,再重新開啟時就會生成新的日誌檔案。這個功能使得日誌檔案不至於過 大。

nginx -s reopen

當然,這與使用kill命令傳送usr1訊號效果相同。

kill -s sigusr1

11、平滑公升級nginx

當nginx服務公升級到新的版本時,必須要將舊的二進位制檔案nginx替換掉,通常情況下這

是需要重啟服務的,但nginx支援不重啟服務來完成新版本的平滑公升級。 公升級時包括以下步驟:

1)通知正在執行的舊版本nginx準備公升級。通過向master程序傳送usr2訊號可達到目的。

kill -s sigusr2

這時,執行中的nginx會將pid檔案重新命名,如將usrlocal/nginx/logs/nginx.pid重新命名 為usrlocal/nginx/logs/nginx.pid.oldbin,這樣新的nginx才有可能啟動成功。

2)啟動新版本的nginx,可以使用以上介紹過的任意一種啟動方法。這時通過ps命令可 以發現新舊版本的nginx在同時執行。

3)通過kill命令向舊版本的master程序傳送sigquit訊號,以「優雅」的方式關閉舊版本的 nginx。隨後將只有新版本的nginx服務執行,此時平滑公升級完畢。

Nginx學習筆記 1

nginx安裝 nginx 安裝目錄 drwxrwxr x 2 daxin daxin 4096 mar 9 17 50 conf 配置目錄 drwxr xr x.2 daxin daxin 4096 mar 9 17 50 html 存放靜態頁面的目錄 drwxrwxr x 2 daxin dax...

nginx 學習筆記1

感謝tengine團隊願意無私的分享他們所編寫的nginx學習書籍 眾所周知,nginx效能高,而nginx的高效能與其架構是分不開的。那麼nginx究竟是怎麼樣的呢?我們可以看到,nginx是以多程序的方式來工作的,當然nginx也是支援多執行緒的方式的,只是主流的方式還是多程序的方式,也是ngi...

nginx 學習筆記 1 nginx安裝

1.nginx安裝 根據作業系統的不同,nginx的安裝方式也不相同。1.1 對linux系統來說,nginx.org提供了nginx安裝包。目前,ngnix提供了如下版本的作業系統的安裝包 rhel centos version 5.x6.x debian version codename 6.x...