网站无法访问

最近更新时间: 2024-06-12 15:06:00

本文档介绍网站无法访问的问题如何进行排查和定位问题。

可能原因

网络问题、防火墙设置、服务器负载过高等原因导致网站无法访问。

故障处理

排查服务器相关问题

服务器关机、硬件故障、CPU/内存/带宽使用率过高都可能造成网站无法访问,因此建议您依次排查服务器的运行状态、CPU/内存/带宽的使用情况。

  1. 登录 云服务器控制台,并在实例的管理页面查看实例的运行情况是否正常。

    • 是,请执行 步骤2。

    • 否,请重启云服务器实例。

  2. 单击实例的 ID/主机名,进入该实例的详情页面。

  3. 选择【监控】页签,查看 CPU/内存/带宽的使用情况。

  4. 执行以下命令,检查 Web 服务相应的端口是否被正常监听。

    说明: 以下操作以 HTTP 服务常用的80端口为例。

    • Linux 实例:执行 netstat -ntulp |grep 80 命令。如下图所示:

    • Windows 实例:打开 CMD 命令行工具,执行 netstat -ano|findstr :80 命令。如下图所示:

    • 如果端口被正常监听,请执行 步骤5。

    • 如果端口没有被正常监听,请检查 Web 服务进程是否启动或者正常配置。

  5. 检查防火墙设置,是否放行 Web 服务进程对应的端口。

    • Linux 实例:执行 iptables -vnL 命令,查看 iptables 是否放通80端口。

    • 若已放通80端口,请 排查网络相关问题。

    • 若未放通80端口,请执行 iptables -I INPUT 5 -p tcp --dport 80 -j ACCEPT 命令,放通80端口。

    • Windows 实例:在操作系统界面,单击【开始】>【控制面板】>【防火墙设置】,查看 Windows 防火墙是否关闭

      • 是,请 排查网络相关问题。

      • 否,请关闭防火墙设置。

排查网络相关问题

网络相关问题也有可能引起网站无法访问,您可以执行以下命令,检查网络是否有丢包或延时高的情况。

ping 目的服务器的公网 IP
  • 如果返回类似如下结果,则表示存在丢包或延时高的情况,请使用 MTR 进一步进行排查。具体操作请参考 云服务器网络延迟和丢包

  • 如果没有丢包或延时高的情况,请 排查安全组设置相关问题。

排查安全组设置相关问题

安全组是一个虚拟防火墙,可以控制关联实例的入站流量和出站流量。安全组的规则可以指定协议、端口、策略等。如果您没有放通 Web 进程相关的端口也会造成网站无法访问。

  1. 登录 云服务器控制台,并在 “实例列表” 页面单击实例的 ID/主机名,进入该实例的详情页面。

  2. 选择【安全组】页签,查看绑定的安全组以及对应安全组的出站和入站规则,确认是否放通 Web 进程相关的端口。如下图所示:

    • 是,请 排查域名、备案和解析相关问题。

    • 否,请修改安全组设置,放通 Web 进程相关的端口。

排查域名备案和解析相关问题

排查了 服务器相关问题、网络相关问题 和 安全组设置相关问题 后,您可以尝试使用云服务器的公网 IP 进行访问。如果使用 IP 地址可以访问,而使用域名访问失败,则可能是域名备案或者解析相关问题造成网站无法访问。

  1. 国家工信部规定,对未取得许可或者未履行备案手续的网站不得从事互联网信息服务,否则就属于违法行为。为不影响网站长久正常运行,如需开办网站,建议您先办理网站备案,待备案成功取得通信管理局下发的 ICP 备案号后,才开通访问。

    • 如果您使用的是我们的域名服务,您可以登录 域名管理控制台 查看相应的域名情况。

    • 如果您的域名已备案,且仍无法解决网站无法访问的问题,请 提交工单 反馈。