nginx启动log文件夹下记录错误日志 bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket in a
也就是执行 start nginx后,任务管理器没有进程,说明nginx启动失败,我们可以进入nginx下的logs文件夹下找到错误日志:它会记录出了什么问题:
解决方法1(推荐):nginx的配置文件一开始默认是80端口,出现这个错误多半是80端口已经被占用。这时候只需要把
server {
listen 8088;
server_name localhost lcsf.com;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
proxy_pass http://lcsf.com;
proxy_redirect default;
}
这个地方的listen改成一个没有被占用过的端口然后重启nginx就可以解决
2016/06/27 13:38:35 [emerg] 6040#7180: 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)
这样的错误了
(方法2):大概意思是 nginx listen的80后端口被占用 于是百度了下查看端口的命令
运行–cmd
C:>netstat -aon|findstr "80"
TCP 127.0.0.1:80 0.0.0.0:0 LISTENING 2448
端口被进程号为2448的进程占用,继续执行下面命令:
C:>tasklist|findstr “2448”
thread.exe 2016 Console 0 16,064 K
很清楚,thread占用了你的端口,Kill it
如果第二步查不到,那就开任务管理器,进程—查看—选择列—pid(进程位标识符)打个勾就可以了
看哪个进程是2448,然后杀之即可。
另外,强制终止进程: CMD命令:taskkill /F /pid 1408
其实上面我都还没解决问题 最后发现有个http.d 这个是apache的进程 结束了这个进程nginx才启动了