nginx启动失败是什么原因nginx启动失败怎么解决nginx启动不成功




nginx启动失败是什么原因nginx启动失败怎么解决nginx启动不成功

2022-07-20 21:25:57 网络知识 官方管理员

前言

服务器阿里云服务器Ubuntu16.04.3LTS

自己弄了个学习的demo,搭建了vue+elementui+springboot前后端分离。将项目部署到服务器上面。
装好nginx,为了避免冲突,将端口改为了8001,启动nginx,发现访问不了!

查找问题

1.先查看nginx配置是否正确
执行下面的命令:

nginx-t#查看nginx配置是否正确也可以切换到nginx的安装目录下的sbin目录下,执行:./nginx-t1

2.查看nginx是否启动成功

ps-ef|grepnginx#查看nginx端口1

我先执行了1,2,发现nginx配置没问题,且启动成功了!那么,我预感到是端口没开放,因为用的是阿里云的服务器,需要先配置安全组。
3.配置阿里云安全组,即放开对应的端口,让其他主机可以访问

nginx启动失败是什么原因(nginx启动失败怎么解决)(1)

ps:nginx里面我配置的端口8001,故这里放开8000-9000范围的端口。但是访问还是不行,那应该是服务器自身没有放开8001这个端口。

4.检查服务器对应的端口是否放开
4.1检查防火墙是否开启

然后怀疑是防火墙问题:
RHEL7中使用了firewalld代替了原来的iptables,操作设置和原来有点不同:

查看防火墙状态:systemctlstatusfirewalld或者systemctlis-activefirewalld
启动防火墙:systemctlstartfirewalld
停止防火墙:systemctlstopfirewalld
永久停用:systemctldisablefirewalld
启用防火墙:systemctlenablefirewalld

我选择关闭防火墙,然后重启tomcat服务,再次访问,发现还是不行。

其次怀疑是端口被占用:
修改tomcat/conf/server.xml,将8080端口号改为8090,重启服务,发现可以正常访问。

**那么**8080端口号被谁占用了呢?
使用netstat–apn|grep8080,查看所有的进程和端口使用情况。发现下面的进程列表,其中最后一栏是PID/Programname。

oracle22725oracle9i3uIPv418621468TCPRHEL3:6800(LISTEN)oracle22725oracle9i4uIPv418621469TCPRHEL3:6800->RHEL3:2174(CLOSE_WAIT)oracle22725oracle9i8uIPv418621568TCPRHEL3:6800->RHEL3:2175(CLOSE_WAIT)oracle22725oracle9i9uIPv418621578TCPRHEL3:6800->RHEL3:2176(CLOSE_WAIT)oracle22726oracle9i3uIPv418621468TCPRHEL3:6800(LISTEN)oracle22726oracle9i4uIPv418621469TCPRHEL3:6800->RHEL3:2174(CLOSE_WAIT)oracle22726oracle9i8uIPv418621568TCPRHEL3:6800->RHEL3:2175(CLOSE_WAIT)oracle22726oracle9i9uIPv418621578TCPRHEL3:6800->RHEL3:2176(CLOSE_WAIT)

(1)查看开放的所有端口
命令一
netstat-a#查看所有服务端口
命令二
nmap+ip地址#如:nmap127.0.0.1

(2)很多时候telnet完就无法退出了,ctrl+c有时也无法退出;
这个时候先执行:ctrl+]然后在telnet命令行输入quit就可以退出了

4.2.2.放开端口,让其他主机可以访问

nginx启动失败是什么原因(nginx启动失败怎么解决)(2)

发表评论:

最近发表
网站分类
标签列表