📜  启动和重新启动Nginx

📅  最后修改于: 2021-01-07 06:02:47             🧑  作者: Mango

启动和重启NGINX

以下是一些用于启动,停止,重新启动或重新加载Nginx的基本操作命令的列表。

启动Nginx:

Nginx可以从以下命令行启动:

$ sudo systemctl start nginx

该命令不产生任何输出。

如果您使用的是不带systemd的Linux发行版,则要启动Nginx,请输入以下命令:

$ sudo service start nginx

或对于较旧的Ubuntu Linux版本:

sudo /etc/init.d/nginx start

启用Nginx服务:

上面的命令仅在此期间启动服务。每次重新启动后,我们都必须手动启动它。

建议不要在系统启动时启用它自动启动,而不是手动启动Nginx服务。要启用Nginx服务,请使用以下命令:

$ sudo systemctl enable nginx

或者,如果您使用的是不带systemd的Linux发行版,请使用以下命令:

$ sudo service nginx enable

停止Nginx

即使存在打开的连接,停止Nginx也会直接关闭所有Nginx worker进程。我们可以通过两种方式停止Nginx进程。

第一种方法是使用stop命令调用Nginx。使用以下命令之一来停止Nginx:

$ sudo systemctl stop nginx

或者,如果您使用的是不带systemd的Linux发行版,请使用以下命令:

$ sudo service stop nginx

或者从源代码编译并安装nginx:

$ sudo /usr/bin/nginx -s stop

或对于较旧的Ubuntu Linux版本:

$ sudo /etc/init.d/nginx stop

停止Nginx的第二种方法是向Nginx主进程发送信号。默认情况下,Nginx将其主进程ID存储到/usr/local/nginx/logs/nginx.pid

这是将QUIT (正常关机)信号发送到Nginx主进程的命令:

$ kill -QUIT $( cat /usr/local/nginx/logs/nginx.pid )

重新启动Nginx

重新启动选项是停止然后启动Nginx服务器的快速操作。

使用以下命令之一重新启动Nginx:

$ sudo systemctl restart nginx

或者,如果您使用的是不带systemd的Linux发行版,请使用以下命令:

$ sudo service restart nginx

或对于较旧的Ubuntu Linux版本:

sudo /etc/init.d/nginx restart

重新加载Nginx

每当我们对其配置进行更改时,我们都需要重新启动或重新加载Nginx。

reload选项将加载新配置,使用新配置启动新工作进程,并正常关闭旧工作进程。

要重新加载Nginx,请键入以下命令之一:

$ sudo systemctl reload nginx

或者,如果您使用的是不带systemd的Linux发行版,请使用以下命令:

$ sudo service reload nginx

测试Nginx配置

每当我们对Nginx服务器的配置文件进行更改或编辑某些内容时,最好在重新启动或重新加载服务之前测试配置。

使用以下命令测试Nginx配置是否存在语法或系统错误:

$ sudo nginx -t

要么

service nginx configtest

两者的输出将如下所示:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

如果有任何错误,这些命令将print的详细消息。