要啟動nginx,請運行可執(zhí)行文件。 當nginx啟動后,可以通過使用-s參數(shù)調用可執(zhí)行文件來控制它。
使用以下語法: ( 推薦學習:nginx使用 )
nginx -s signal
信號(signal)的值可能是以下之一:
stop – 快速關閉服務
quit – 正常關閉服務
reload – 重新加載配置文件
reopen – 重新打開日志文件
例如,要通過等待工作進程完成服務當前請求來停止nginx進程,可以執(zhí)行以下命令:
nginx -s quit
注:該命令應該在啟動nginx的同一用戶下執(zhí)行。
在將重新配置命令的命令發(fā)送到nginx或重新啟動之前,配置文件中的更改將不會被應用。
要重新加載配置文件,請執(zhí)行:
nginx -s reload
當主進程收到要重新加載配置的信號,它將檢查新配置文件的語法有效性,并嘗試應用其中提供的配置。 如果這是成功的,主進程將啟動新的工作進程,并向舊的工作進程發(fā)送消息,請求它們關閉。
否則,主進程回滾更改,并繼續(xù)使用舊配置。 老工作進程,接收關閉命令,停止接受新連接,并繼續(xù)維護當前請求,直到所有這些請求得到維護。 之后,舊的工作進程退出。
還可以借助Unix工具(如kill utility)將信號發(fā)送到nginx進程。 在這種情況下,信號直接發(fā)送到具有給定進程ID的進程。 默認情況下,nginx主進程的進程ID寫入目錄/usr/local/nginx/logs或/var/run中的nginx.pid。
例如,如果主進程ID為1628,則發(fā)送QUIT信號導致nginx的正常關閉,請執(zhí)行:
kill -s QUIT 1628
要獲取所有運行的nginx進程的列表,可以使用ps命令,例如,以下列方式:
ps -ax | grep nginx