Nginx发音为engine x是开源的,高性能的HTTP和反向代理服务器,负责处理互联网上一些最大站点的负载。它可以用作独立的Web服务器,也可以用作Apache和其他Web服务器的反向代理。
如果您是开发人员或系统管理员,那么您可能会定期与Nginx打交道。在本教程中,我们将介绍最重要和最常用的Nginx命令,包括启动,停止和重新启动Nginx,测试Nginx配置文件语法错误,重新加载Nginx配置,查看Nginx状态,检查Nginx版本。
所有命令必须以sudo或root用户身份执行,这些命令也适用于所有Linux发行版。如Ubuntu和CentOS 7,Debian 9,RedHat,Arch Linux等。
启动Nginx非常简单。只需运行以下命令:
sudo systemctl start nginx
成功时,该命令不会产生任何输出。如果您运行的是没有systemd的Linux发行版,可以使用以下命令来启动Nginx:
sudo service start nginx
建议将其设置为在系统启动时启动,而不是手动启动Nginx服务:
sudo systemctl enable nginx
即使Nignx已经存在打开的socket连接,停止Nginx也会快速关闭所有Nginx woker进程。要停止Nginx,请运行以下命令之一:
sudo systemctl stop nginx
sudo service stop nginx
重启选项是一种停止然后启动Nginx服务器的快速方法。使用以下命令之一执行Nginx重新启动:
sudo systemctl restart nginx
sudo service restart nginx
这是可能您最常使用的命令。
每当您更改其配置时,您都需要重新加载或重新启动Nginx。重新加载将加载新配置,使用新配置启动新的woker进程并正常关闭旧woker进程。要重新加载Nginx,请使用以下命令之一:
sudo systemctl reload nginx
sudo service reload nginx
每当您更改Nginx服务器的配置文件时,最好在重新启动或重新加载服务之前测试配置文件语法。使用以下命令测试Nginx配置是否存在任何语法或系统错误:
sudo nginx -t
输出看起来像这样。
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
如果有任何错误,命令将打印详细消息。
要检查Nginx服务的状态,请使用以下命令:
sudo systemctl status nginx
输出看起来像这样:
nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2019-04-21 13:57:01 PDT; 5min ago
Docs: man:nginx(8)
Process: 4491 ExecStop=/sbin/start-stop-daemon --quiet --stop --retry QUIT/5 --pidfile /run/nginx.pid (code=exited, status=0/SUCCESS)
Process: 4502 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Process: 4492 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Main PID: 4504 (nginx)
Tasks: 3 (limit: 2319)
CGroup: /system.slice/nginx.service
|-4504 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
|-4516 nginx: worker process
`-4517 nginx: worker process
有时您可能需要知道Nginx的版本,以便调试问题或确定某个功能是否可用。您可以通过运行以下方式检查您的Nginx版本:
sudo nginx -v
nginx version: nginx/1.14.0 (Ubuntu)
-V选项将输出Nginx版本以及编译nginx时使用的configure配置选项。
sudo nginx -V
在本教程中,我们向您展示了一些最重要的Nginx命令。如果您想了解Nginx命令行的更多信息,请访问Nginx文档。