1-运行和控制nginx

78 阅读2分钟

nginx命令行参数

不像许多其他软件系统,Nginx 仅有几个命令行参数。

参数说明
-c为 Nginx 指定一个配置文件,来代替缺省的。
-t不运行,而仅仅测试配置文件。nginx 将检查配置文件的语法的正确性,并尝试打开配置文件中所引用到的文件。
-v显示 nginx 的版本。
-V显示 nginx 的版本,编译器版本和配置参数。

nginx常用命令

nginx一般安装在 /usr/local/nginx 目录下

命令说明
./nginx启动。启动前建议执行 ./nginx -t 测试配置文件是否正确
./nginx -c /usr/local/nginx/nginx.conf启动时指定配置文件
./nginx -s stop停止
./nginx -s quit安全退出
./nginx -s reload重新加载配置文件
ps aux | grep nginx查看nginx进程

nginx控制信号

除了使用命令外,还可以使用信号系统来控制主进程。默认,nginx将主进程的pid写入到/usr/local/nginx/nginx.pid。可以通过 nginx -V 来查看pid的位置。 主进程可以处理以下的信号:

信号说明
TERM, INT快速关闭
QUIT从容关闭
HUP重载配置 用新的配置开始新的工作进程 从容关闭旧的工作进程
USR1重新打开日志文件
USR2平滑升级可执行程序。
WINCH从容关闭工作进程

通过控制信号来启动、停止、重启 nginx

nginx启动
sudo /usr/local/nginx/nginx (nginx二进制文件绝对路径,可以根据自己安装路径实际决定)

nginx从容停止命令,等所有请求结束后关闭服务
ps -ef | grep nginx
kill -QUIT  nginx主进程号

nginx 快速停止命令,立刻关闭nginx进程
ps -ef | grep nginx
kill -TERM nginx主进程号 

如果以上命令不管用,可以强制停止
kill -9 nginx主进程号

如果嫌麻烦可以不用查看进程号,直接使用命令进行操作
其中/usr/local/nginx/nginx.pid 为nginx.conf中pid命令设置的参数,用来存放nginx主进程号的文件
kill -信号类型(HUP|TERM|QUIT) cat /usr/local/nginx/nginx.pid
例如 kill -QUIT cat /usr/local/nginx/nginx.pid