nginx(二) : 启动、重启、停止

nginx启动

#sbin 目录位于nginx 安装的跟目录
启动命令:./sbin/nginx

启动成功后访问:http://192.168.8.222/

nginx 带启动参数

  • 参数介绍

使用方法实例

nginx -c /path/to/nginx.conf  // 以特定目录下的配置文件启动nginx:
nginx -t     // 测试当前配置文件是否正确
nginx -t -c /path/to/nginx.conf  //测试特定的nginx配置文件是否正确

停止 或者 重启 NIGNX

有两种方式:

  • 第一种

在启动命令后面加上参数

	nginx -s  reload  // 修改配置后重新加载生效
	nginx -s  reopen   // 重新打开日志文件
	nginx -s  stop  // 快速停止nginx
	nginx -s  quit  // 完整有序的停止nginx
  • 第二种

发送一个信号量给 NGINX 的主进程,NGINX默认会将主进程id写入/usr/local/NGINX/logs/nginx.pid,可以通过查看这个文件,得到主进程PID

信号量的信号标识符如下表

使用实例及介绍:

# 发送这个信号后,不会立刻停止老的进程,但程序会重新的加载配置文件,再接收的请求将会以新的配置为准
kill -HUP $( cat /usr/local/nginx/logs/nginx.pid )

# 发送这个信号命令,会优雅的停止所有的进程,即等正在运行的进程执行完成后,停止nginx
kill -QUIT $( cat /usr/local/nginx/logs/nginx.pid )

# 发送这个信号后,会强制的停止所有进程,停止nignx 服务
kill -TERM $( cat /usr/local/nginx/logs/nginx.pid )

# 发送这个信号后,会重新打开日志文件,可以用来做日志切割
kill -TERM $( cat /usr/local/nginx/logs/nginx.pid )

常见错误

端口被占用

[root@localhost nginx]# ./sbin/nginx 
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()

解决方法:

#查看被占用的端口是谁在占用
$ netstat -antp
[root@localhost nginx]# netstat -antp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name  
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      17758/nginx: master 

# 关掉这个进程 实用kill或者 pkill 或者 killall(关闭进程)
[root@localhost nginx]# pkill -9 17758

重启一下,就OK了

参考文档

官方文档

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值