可能是之前的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进程