启动nginx报错问题
为了解决生产环境的bug,模拟生产环境,我使用了nginx,在安装启动的过程中,出现了很多问题。
1、nginx下载地址
http://nginx.org/en/download.html 这是nginx的下载地址,下载稳定版
2、安装
解压压缩包后,将解压后文件放到没有中文路径的目录下(若有中文,则报错log显示No mapping for the Unicode character exists in the target multi-byte code page)
3、启动
可以双击nginx.exe启动,或者通过命令行进入对应路径,使用start nginx命令启动。启动成功后,在logs文件夹下,会多出一个nginx.pid的文件,在任务管理器中也会出现nginx.exe进程(可能会有多个)。
在这一步,启动的时候出现了报错,查询错误日志,显示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)。查询官网后,发现引起该报错的,有三种可能。
1)防火墙开启;
2)端口被占用;
3)尝试修改端口;
我的本地防火墙没开,而且也没有修改过端口,因此直接定位为第二个原因。
通过命令行netstat -aon|findstr "80",查看端口被哪个进程占用。然后根据对应的pid进行再次查询,tasklist | findstr "pid号",查询具体的进程名称。如果查询的结果,进程并不重要,可以直接打开任务管理器关闭该进程,再重新启动nginx,就会正常。但是,我查询的结果为一个系统进程,不能通过任务管理器关闭,因此,我们需要更改注册表,是端口不再被占用,然后重启电脑。
在搜索框输入regedit,进入注册表编辑器,然后找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP路径,找到里边的start(一个reg_dword文件),将数值由3改为0,保存修改后,重启电脑,使修改生效。
重启后,再次启动nginx.exe,启动就能成功了。
4、关闭
可以通过使用命令行进入对应路径,然后使用nginx.exe -s stop来结束进程,但是这个命令可能不会保留相关信息。
推荐使用nginx.exe -s quit来结束进程,可以保留完整的相关信息。
启动nginx报错问题的更多相关文章
- nginx报错 nginx: [alert] kill(25903, 1) failed (3: No such process)
当nginx 中报错 时 nginx报错 nginx: [alert] kill(25903, 1) failed (3: No such process) 通过在nginx/sbin,目录下 运行命 ...
- [nginx报错问题]reload时报错:nginx: [error] invalid PID number "" in ...
错误 第一次探索nginx,执行以下命令时: nginx -s reload 报出错误: nginx: [error] invalid PID number "" in ... * ...
- Windows下nginx报错解决:CreateFile() "xxx/logs/nginx.pid" failed
写在前面 本文给出Windows下nginx报错:CreateFile() "xxx/logs/nginx.pid" failed 的解决方法并分析了出错原因,其中 xxx 表示n ...
- maven 项目启动tomcat报错 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
maven项目启动tomcat报错: java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderLi ...
- 【转】Eclipse下启动tomcat报错:/bin/bootstrap.jar which is referenced by the classpath, does not exist.
转载地址:http://blog.csdn.net/jnqqls/article/details/8946964 1.错误: 在Eclipse下启动tomcat的时候,报错为:Eclipse下启动to ...
- 学习中的错误——ubuntu 14.04 LTS 启动eclipse报错
在ubuntu中启动eclipse报错:(Eclipse:15978): GLib-GIO-CRITICAL **: g_dbus_connection_get_unique_name: assert ...
- tomcat7 启动项目报错 java.lang.NoSuchMethodError: javax.servlet.ServletContext.getSessionCookieConfig()
JDK版本:jdk1.8.0_77 Tomcat 版本:apache-tomcat-7.0.47 异常重现步骤: 1.完成项目部署 2.启动Tomcat 异常头部信息:java.lang.NoSuch ...
- Eclipse中启动tomcat报错:A child container failed during start
我真的很崩溃,先是workspace崩了,费了好久重建的workspace,然后建立了一个小demo项目,tomcat中启动却报错,挑选其中比较重要的2条信息如下: A child container ...
- Ubuntu下安装了java但启动eclipse报错说没装java
参考资料:http://blog.csdn.net/happyteafriends/article/details/8290950 一.问题 在Ubuntu下安装了java并在~/.bashrc配置了 ...
随机推荐
- 关于 Duplicate detection rules 自动 unpublish 的问题
最近发现自己建立的 Duplicate detection rules 在 publish 之后,会不定时地变成 unpublish 的状态,经过几次测试后,发现是每次将开发中版本更新到测试的 sit ...
- SpringBoot项目打成jar包后上传文件到服务器 目录与jar包同级问题
看标题好像很简单的样子,但是针对使用jar包发布SpringBoot项目就不一样了.当你使用tomcat发布项目的时候,上传文件存放会变得非常简单,因为你可以随意操作项目路径下的资源.但是当你使用Sp ...
- IntelliJ IDEA 2018最新版注册码激活方法
一.首先点击intellij idea 2018 二.选择激活码 三.输入以下激活码intellij idea 2018 最新版本 注册激活码 **************************** ...
- PMP知识点(四)——项目管理计划的内容
项目管理计划([4.2制定项目管理计划]的输出) 包含三个基准和十三个子计划和一些其他内容 三个基准:成本基本.进度基准.范围基准 其中范围基准([5.4创建WBS]的输出)包含了:项目范围说明书.W ...
- FPGA
FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL.GAL.CPLD等可编程器件的基础上进一步发展的产物.它是作为专用集成电路(ASIC)领域中的 ...
- JavaScript中的alert()与console.log()的区别
1.alert() [1.1]有阻塞作用,不点击确定,后续代码无法继续执行 [1.2]alert()只能输出string,如果alert输出的是对象会自动调用toString()方法 e.g. ale ...
- Oracle GoldenGate微服务架构的服务Shell脚本
Oracle GoldenGate微服务架构的/etc/init.d下的OracleGoldenGate服务Shell脚本: #!/bin/sh # # Oracle GoldenGate Servi ...
- ssh免密登陆:sshpass -p [passwd] ssh -p [port] root@192.168.X.X
正文: ssh免密登陆:sshpass -p [passwd] ssh -p [port] root@192.168.X.X
- Light OJ 1343 - Aladdin and the Black Stones
题目 link 求偶数子序列 满足 的个数. 分析 首先, 我们先把每一对a[i] + a[j]存起来, 这样就可以把题目的偶数个条件无视了. 设 T[i,j] = a[i] + a[j]; 因为我们 ...
- [Linux]fcntl函数文件锁概述
概述 fcntl函数文件锁有几个比较容易忽视的地方: 1.文件锁是真的进程之间而言的,调用进程绝对不会被自己创建的锁锁住,因为F_SETLK和F_SETLKW命令总是替换调用进程现有的锁(若已存在), ...