遇到两次nginx秒退的情况了
第一次,是nginx的安装目录路径下有中文。
这是第二次,错误日志如下
2015/12/11 09:53:25 [emerg] 3856#3392: 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)
看这个日志, 0.0.0.0:80 像是80端口被占用,网上找了一下,
发现,文章地址如下:
http://blog.csdn.net/love__coder/article/details/7421706
原文解决办法如下:
××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
在cmd窗口运行如下命令:
[plain] view
plaincopy
- C:\Users\Administrator>netstat -aon | findstr :80
看到80端口果真被占用。发现占用的pid是4,名字是System。怎么禁用呢?
1、打开注册表:regedit
2、找到:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\HTTP
3、找到一个REG_DWORD类型的项Start,将其改为0
4、重启系统,System进程不会占用80端口
重启之后,start nginx.exe 。在浏览器中,输入127.0.01,即可看到亲爱的“Welcome to nginx!” 了。
×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
我试试
不行,不知道是我机器的原因还是其他的原因,重启后,80端口还是被占用,我记得好像是sqlserver,还是其他程序来着,也会用到80端口,可能是这个地方冲突了,
但是现在比较急,没法去定位谁占有的,就该nginx的端口,
打开conf/nginx.conf
server { listen 8888; charset utf-8; rewrite_log on; server_name saas.erzao.org; location /prm/server/ { proxy_pass http://127.0.0.1:8080; } location /prm/ { root D:\Users\yanan\workspace\prm\fe; index index.html index.htm; rewrite ^/prm/hid/(.*)$ /prm/html/login.html?hid=$1 break; } location /ecd-web/ { proxy_pass http://127.0.0.1:8080; } location /scale/ { proxy_pass http://127.0.0.1:8080; } location /ecd-scale/ { proxy_pass http://127.0.0.1:8080; } location / { root D:\\tujia\\ecd-fe_project; index index.html index.htm; rewrite ^/hid/(.*)$ /html/login.html?hid=$1 break; } }
第一个:listen 80 (本来是80) 我给改成8888了。
这样重启就可以了,没有问题了