如:kill -quit 主程序號 注:平緩停止
nginx服務在執行時,會儲存乙個主程序和乙個或多個worker process工作程序。我們通過給nginx
服務的主程序傳送訊號就可以控**務的啟停了。首先需要知道主程序的程序號pid。
獲取pid途徑:
1.nginx伺服器安裝目錄下的logs目錄中會產生檔名為nginx.pid檔案,儲存主程序的pid。
2.ps命令,如:ps -ef|grep nginx。
nginx服務可接受的訊號:
term或int
快速停止nginx服務
quit
平緩停止nginx服務
hup使用新的配置啟動程序,然後平緩停止原有的程序,既平滑重啟。
usr1
重新開啟日誌檔案,用於日誌切割
usr2
使用新版本的nginx檔案啟動服務,然後平緩停止原有nginx程序,既平滑公升級
winch
平緩停止worker process,用於nginx伺服器平滑公升級
cd /nginx/sbin 進入nginx安裝路徑下的sbin目錄
./nginx -h 列印二進位制檔案nginx的用法,提示資訊如下。
nginx version: nginx/1.8.0
usage: nginx [-?hvvtq] [-s signal] [-c filename] [-p prefix] [-g directives]
options:
-?,-h : this help
-v : show version and exit
-v : show version and configure options then exit
-t : test configuration and exit--測試配置正確性並退出
-q : suppress non-error messages during configuration testing
-s signal : send signal to a master process: stop, quit, reopen, reload--向主程序傳送訊號
-p prefix : set prefix path (default: /opt/nginx/)--用來改變nginx的安裝路徑,常用來平滑公升級
-c filename : set configuration file (default: conf/nginx.conf)--用來指定啟動nginx服務使用的配置檔案
-g directives : set global directives out of configuration file--用來補充nginx配置檔案,向nginx服務指定啟動時應用於全域性的配置。
./nginx -s reopen :重新開啟日誌檔案
./nginx -t -c /path/nginx.conf :測試nginx配置檔案是否正確
./nginx -s stop :快速停止nginx
./nginx -s quit :平緩停止nginx
nginx服務的停止方式
1.快速停止
停止當前nginx服務正在處理的所有網路請求,丟棄連線,停止工作。
2.平緩停止
允許nginx服務將當前正在處理的網路請求處理完成。但不接受新的請求,然後關閉連線,停止工作。
編寫Nginx啟停服務指令碼
在 etc init.d 目錄下建立指令碼 vim etc init.d nginx編寫指令碼內容 其中下面2行需要根據情況自行修改 nginxd opt nginx sbin nginx nginx config opt nginx conf nginx.conf 更改指令碼許可權 chmod 7...
編寫Nginx啟停服務指令碼
在 etc init.d 目錄下建立指令碼 vim etc init.d nginx編寫指令碼內容 其中下面2行需要根據情況自行修改 nginxd opt nginx sbin nginx nginx config opt nginx conf nginx.conf 更改指令碼許可權 chmod 7...
nginx啟停指令碼
安裝nginx時,原始碼包中未帶官方的啟動指令碼,也就無法使用service nginxd start這種啟動方式,查了下資料自己寫了乙個 bin bash version 0.0.1 author lifafu file time 2017 02 04 08 00 company source e...