1、安装
到下载一个windows下使用的最新版本,目前是1.11.10,如图:
下载下来解压缩就可以。
2、运行
运行nginx,报错:
[emerg] 10348#10940: bind() to 0.0.0.0:80 failed (10013: an attempt was made to access a socket in a way forbidden by its access permissions)
如图:
在log日志中也能看到,打开:
nginx-1.11.10\logs\error.log
如图:
nginx默认要使用80端口,但windows下80端口是被占用的,查一下:
被一个pid为4的进程占用,查一下:
是个系统进程,任务管理器里看一下:
果然。
3、问题解决
解决的办法就是让系统进程不再占用80端口,需要修改注册表。
3.1 打开注册表
启动栏输入regedit
3.2 找到注册项并修改
找到
hkey_local_machine\system\currentcontrolset\services\http
里面有一个reg_dword类型的项start注册项:
原值为3:
改为0:
3.3 重启操作系统
重启windows系统,原来的系统进程就不会占用80端口了。
4、重新运行nginx
在nginx的安装目录下运行:
start nginx.exe
或者:
nginx.exe
如图:
在任务管理器中能够看出后台会有两个进程被启动起来:
5、关闭nginx
nginx.exe -s stop
或者:
nginx.exe -s quit
stop可以快速停止nginx,但是可能不会保存相关信息;而quit是完整有序的停止nginx,这个过程会保存相关信息。
以上是windows下80端口被占用nginx不能启动怎么解决的详细内容。更多信息请关注PHP中文网其他相关文章!