Nginx 啟動(dòng)之后,可以使用以下命令控制:
(推薦教程:nginx教程)
nginx -s
其中-s意思是向主進(jìn)程發(fā)送信號(hào),signal可以為以下四個(gè)中的一個(gè):
stop
— 快速關(guān)閉
quit
— 優(yōu)雅關(guān)閉
reload
— 重新加載配置文件
reopen
— 重新打開(kāi)日志文件
當(dāng)運(yùn)行nginx -s quit
時(shí),Nginx 會(huì)等待工作進(jìn)程處理完成當(dāng)前請(qǐng)求,然后將其關(guān)閉。當(dāng)你修改配置文件后,并不會(huì)立即生效,而是等待重啟或者收到nginx -s reload
信號(hào)。
當(dāng) Nginx 收到 nginx -s reload
信號(hào)后,首先檢查配置文件的語(yǔ)法。語(yǔ)法正確后,主線(xiàn)程會(huì)開(kāi)啟新的工作線(xiàn)程并向舊的工作線(xiàn)程發(fā)送關(guān)閉信號(hào),如果語(yǔ)法不正確,則主線(xiàn)程回滾變化并繼續(xù)使用舊的配置。當(dāng)工作進(jìn)程收到主進(jìn)程的關(guān)閉信號(hào)后,會(huì)在處理完當(dāng)前請(qǐng)求之后退出。