如果云服务器无法对外提供 HTTP 服务,可以按以下思路检查 Web 服务相关接口(默认为TCP 80)是否正常工作:
1. 在控制台,确认安全组已经放行该端口。
2. 远程连接云服务器,确认服务已经开启。
3. 确认端口正常被监听。如没有,请修改监听地址。
4. 确认云服务器防火墙已经放行服务。
5. 若仍无法解决,请提交工单咨询。
本文提供在 Windows Server 2012 和 CentOS 7.3 中检查 TCP 80 端口是否正常工作的方法。
Windows Server 2012
本文在 Windows 2012 系统的 Windows 云服务器中安装 IIS 服务为例。
1. 登录控制台,确认云服务器所在安全组里已经添加以下安全组规则:
规则方向 | 协议 | 端口范围 | 授权对象 |
入方向 | HTTP | 80 | 0.0.0.0/0 |
2. 远程登录 Windows 云服务器。
3. 查看 IIS 服务是否已经开启:
3.1 在【服务器管理器】窗口,单击 工具 > Internet Information Services (IIS)管理器。如果找不到这个选项,则说明没有成功安装 IIS 服务,需要重新安装 IIS 服务。
3.2 在 Internet Information Services (IIS)管理器 窗口中确认以下信息:
● 在连接导航栏里,右键单击实例 ID,如果启动处于灰色状态,表示 IIS 服务已经开启。
● 单击网站,在右边列表页查看您安装的网站的状态。如果网站状态为已停止,则单击网站,在右侧操作栏的管理站点部分,单击启动,启动网站。
4. 以下是查看端口在实例中是否正常被监听的操作步骤:
启动命令提示符。执行以下命令。
netstat -ano | findstr :80
如果返回类似 TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 4,则说明 80 端口正常全网监听。如果返回的不是该端口,请在 Internet Information Services (IIS)管理器 窗口中,单击指定网站,然后单击右侧 操作 栏中的 绑定,将绑定的端口该为 80 端口。
5. 查看防火墙是否已经放行Web服务:
5.1 单击控制面板>系统与安全>Windows 防火墙。
5.2 根据防火墙状态,执行不同操作。
● 如果防火墙处于关闭状态,不需要再做其他处理。如果仍无法访问网站,请提交工单咨询。
● 如果防火墙处于开启状态,则执行以下操作。
○ 单击 高级设置。
○ 在弹出窗口的左侧导航栏中,单击 入站规则。
○ 选择 万维网服务(HTTP 流入量),如果处于禁用状态,在 操作 栏里,单击 启用规则。
6. 完成上述检查,如果仍不能访问实例,请提交工单咨询。
CentOS 7.3
以在CentOS 7.3系统的Linux实例中安装Nginx服务为例。
1. 登录控制台,确认实例所在安全组里已经添加以下安全组规则。
规则方向 | 协议 | 端口范围 | 授权对象 |
入方向 | HTTP | 80 | 0.0.0.0/0 |
2. 远程登录 Linux 云服务器。
3. 执行以下运行命令。
systemctl status nginx
如果系统返回类似如下,则说明 Nginx 已经启动。如果未开启,则执行 systemctl start nginx 命令。
4. 执行以下命令,查看端口在实例中是否正常被监听:
netstat -an | grep 80
如果返回 tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN,则说明 80 端口正常全网监听。如果返回的不是上述结果,请修改监听地址。
5. CentOS 7 之后的版本默认安装 Firewalld 。如果已经启用 firewalld.service,则需要放行 TCP 80 端口。执行以下命令。若返回结果为 success,则表示已经放行 TCP 80 端口。
firewall-cmd --add-port=80/tcp --permanent
注意:
使用 CentOS 7 之前的版本并开启默认防火墙 iptables 时,应注意 iptables 默认不拦截访问,如果配置了 iptables 规则,需要执行以下步骤。
● 查看规则列表:执行命令 iptables --line -vnL。根据返回结果执行不同操作。
○ 如果设置了默认拦截,添加规则放行 TCP 80端口。执行命令 iptables -A INPUT -p tcp --dport 80 -j ACCEPT
○ 如果设置了 DROP TCP 80 端口,替换规则放行 80 端口。执行命令 iptables -R INPUT [80端口对应的规则编号] -p tcp --dport 80 -j ACCEPT
● 保存上述规则,执行命令 service iptables save
完成上述检查,如果仍不能访问实例,请提交工单咨询。