標簽:
Nginx的平滑重啟
如果改變了噸化的配置文件,想重啟啤^,同樣可以通過發送系統信號給NginX主進程的方式來進行。不過,重啟之前,要確認Nginx配置文件(nginxxonf)的語法是正確的,否則Nginx將不會加載新的配置文件。通過以下命令可以判斷NginX配置文件是否正確:
/usr/local/webserver/nginx/sbin/nginx-t-c/usr/loGjal/webserver/nginx/conf/ngimcvcpnf ‘
如果配置文件不正確,屏幕將會提示配置文件的第幾行出錯:
[emerg]:unknowndirective”abc”in/usrAocaVwebserver/nginx/conf/nginx.conf:55
configurationfile/usr/locaVwebserver/nginxy^conf/nginx.conftestfailed
如果配置文件正確,屏幕將提示以下兩行信息:
theconfigurationfile/usrAocaVwebserver/nginxy^conf/nginx.confsyntaxisok
configurationfile/usrAocaVwebserver/nginxy^conf/nginx.conftestissuccessful
這時候,就可以平滑重啟Nginx了。kill-HUPNginx.ia4^*f*
kill-HUPv/usr/local/webserver/nginx/logs/nginx.pid’
當Nginx接收到HUP信號時,它會嘗試先解析配置文件(如果指定配置文件,就使用指定的,否則使用默認的),如果成功,就應用新的配置文件(例如,重新打開日志文件或監聽的套接字)。之后,Nginx運行新的工作進程并從容關閉舊的工作進程。通知工作進程關閉監聽套接字,但是繼續為當前連接的客戶提供服務。所有客戶端的服務完成后,舊的工作進程被關閉。如果新的配置文件應用失敗,Nginx將繼續使用舊的配置進行工作。
|