在Windows下部署Nginx反向代理时启动Nginx提示80端口启动失败被占用,如下报错
nginx: [emerg] 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)
解决办法
使用下面的命令查看80端口被谁占用了,后面的80就是端口号(如果要查找那个端口号被占用了,将80改为指定端口号即可)
netstat -ano |find ":80"

通过上面命令查看80端口是被PID 4进程占用(System进程),停用IIS后发现80端口还是被占用,我嘞个去!!!!
继续使用 netsh http show servicestate 查询http被什么占用,发现被进程ID:1584占用

打开任务管理器找到 PID:1584 的进程,右键打开文件位置,发现是在 Microsoft SQL Server 安装目录下的

百度了下ReportingServicesService.exe 发现是数据库的报表服务
打开系统服务列表找到 SQL Server Reporting Services (MSSQLSERVER) 服务,点击停止

停止服务后后重新启动Nginx,正常启动了


