Nginx命令详解启动、关闭和重启

Lasted 2019-12-11 11:48:53

本篇介绍Nginx的命令行参数和Nginx的启动、关闭和重启。

启动Nginx

进入Nginx安装目录,默认安装目录为 /usr/local/nginx

#进入Nginx安装目录
cd /usr/local/nginx
#启动Nginx
./sbin/nginx

带参数测试Nginx配置文件和启动参数。

#测试Nginx配置文件
./sbin/nginx -t -c ~/mynginx.conf -g "pid /var/run/nginx.pid; worker_processes 2;"

Nginx命令选项

-?, -h 打印帮助
-v 打印版本信息
-V 打印Nginx版本,编译版本和编译参数
-t 不运行,检测Nginx配置文件语法是否正确,然后退出
-q 检测配置的时候不显示非错误信息
-s signal 给Nginx主进程发送信号:sotp(停止)、quit(退出)、reopen(重启)和reload(重新加载配置文件) (version >= 0.7.53)
-p prefix 设置前缀路径(默认是:/usr/local/nginx/)(version >= 0.7.53)
-c filename 指定配置文件路径
-g directives 设置全局命令 (version >= 0.7.4)

停止和重新加载配置文件

有两种方式关闭正在允许的Nginx服务,第一种使用命令参数 -s 发送信号,第二种通过操作系统发送信号给Nginx主线程,命令如下显示:

#停止Nginx
./sbin/nginx -s stop
#停止Nginx,pid默认位于logs目录下
kill -QUIT $(cat ./logs/nginx.pid)

主线程接收如下信号量:

TERM, INT 快速停止
QUIT 优雅停止
KILL 强制停止
HUP 重新加载配置文件
启动新主线程
优雅停止旧主线程
USR1 重新加载日志文件。处理大日志文件时使用
USR2 升级主线程可执行文件
WINCH 优雅停止主线程

如果日志文件很大,清空后磁盘空间没有释放,需要使用 USR1 重新加载日志文件

#重新加载日志文件
kill -USR1 $(cat ./logs/nginx.pid)