nginx 无法启动

本文介绍了如何在Windows系统中检查并解决Nginx与IIS竞争80端口的问题,包括使用`netstat`命令查看占用情况,以及通过`netstop`、`scconfig`和`taskkill`等命令关闭相关服务。还提供了Nginx的常见命令行操作指南。
摘要由CSDN通过智能技术生成

可能是之前的nginx服务占用80端口

cmd下使用命令:netstat -an | find "0.0.0.0:80",可以发现80端口已经被占用。 
使用命令:netstat -ano
可以发现占用80端口的服务pid = 4,
ctrl+shift+Esc打开任务管理器,查看详细,占先pid排序,可以查看到pid为4的进程:NT kernel & System。

解决方法

第一步:使用如下命令关闭iis相关服务(管理员身份进入cmd)   
net stop http 
    这时会有提示确认信息,提示要关闭http服务,需要停止其依赖的其他服务,输入Y
此时依赖的相关服务都会提示停止成功,到http服务时,最后会发现:http server 无法停止。
此时执行第二步。

第二步:命令行输入如下命令:
sc config http start=disabled
没有任何提示,重新出现输入提示,说明已经成功

关闭Nginx
如果使用cmd命令窗口启动nginx, 关闭cmd窗口是不能结束nginx进程的,可使用两种方法关闭nginx

方法一:(1)输入nginx命令

nginx -s stop(快速停止nginx) 或 nginx -s quit(完整有序的停止nginx),

这两个命令的区别在于nginx -s stop是快速停止Nginx,而nginx -s quit是有序的停止Nginx,前者可能会导致数据没有完全保存;

方法二:(2)使用

taskkill taskkill /f /t /im nginx.exe
注意:方法一必须要在Nginx的安装包目录下。否则无法找到Nginx。

这种方法可以直接在cmd命令面板上使用,当第一种方法无效时可以尝试使用此方法,前第一种方法适用于大部分版本的Nginx,但是个别版本的可能不实用,使用taskkill就可解决。

注解:taskkill是用来终止进程的,/f是强制终止 ./t终止指定的进程和任何由此启动的子进程。
	 /im示指定的进程名称 .

Nginx常用命令

cd /usr/local/nginx/sbin/
./nginx  启动
./nginx -s stop  停止
./nginx -s quit  安全退出
./nginx -s reload  重新加载配置文件  如果我们修改了配置文件,就需要重新加载。
ps aux|grep nginx  查看nginx进程
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值