华为云踩坑系列-高频问题
1 设置云主机安全组策略
- 华为云默认不开启
80
端口,首先要去华为云控制台安全组
添加入方向的80
端口
2 检查nginx
-
添加完之后,反复测试仍然无法通过IP访问,我已经能确保 nginx 已经监听在80端口了,但是还是没法访问
-
远程连接ECS实例,确认服务已经开启。
-
执行如下命令,检查nginx服务是否已经开启。
systemctl status nginx
- 回显信息如下所示,则说明Nginx已经启动。
- 如果未开启,则执行以下命令启动Nginx。
systemctl start nginx
- 执行如下命令命令,查看端口在实例中是否正常被监听。
netstat -an | grep 80
- 回显信息则说明80端口正常全网监听。如果返回的不是上述结果,请修改监听地址。
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
3 检查防火墙
- 一直认为是华为云没配置好,后来发现是开启了firewall(linux防火墙),防火墙禁止访问80端口
- 通过
systemctl status firewalld
查看下防火墙状态,下图显示防火墙开启
systemctl status firewalld
- 如果
Active inactive(dead)
,说明防火墙是关闭状态 - 如果
Active inactive(running)
,说明防火墙现在是开启状态 - 查询80端口是否开放
firewall-cmd --query-port=80/tcp
- 添加80端口
firewall-cmd --permanent --add-port=80/tcp
- 移除80端口
firewall-cmd --permanent --remove-port=80/tcp
- 修改配置后重新启动才生效
firewall-cmd --reload
- 另外的方法就是直接关闭防火墙
systemctl stop firewalld