编译安装好nginx后,正常启动方式
例如我的安装目录是/usr/local/nginx
修改配置后重新加载生效
/usr/local/nginx/sbin/nginx -s reload
重新打开日志文件
/usr/local/nginx/sbin/nginx -s reopen
测试nginx配置文件是否正确
/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
启动nginx
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
快速停止nginx
/usr/local/nginx/sbin/nginx -s stop
完整有序的停止nginx
/usr/local/nginx/sbin/nginx -s quit
注:stop和quit的区别在于
quit是一个优雅的关闭方式,Nginx在退出前完成已经接受的连接请求
Stop 是快速关闭,不管有没有正在处理的请求。
其他的停止nginx 方式:
ps -ef | grep nginx
kill -QUIT 主进程号 :从容停止Nginx
kill -TERM 主进程号 :快速停止Nginx
pkill -9 nginx :强制停止Nginx
平滑重启nginx:
kill -HUP 主进程号
pid /var/run/nginx.pid;
[Unit]
Description=nginx - high performance web server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
ExecQuit=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
这时就可以利用systemctl进行配置了
systemctl start/stop/reload/quit nginx.service
若发生报错,可通过systemctl status nginx.service查看失败原因
设置开机自启动
systemctl enable nginx.service