网站无法访问怎么办?-九游平台
问题描述
网站的访问与云服务器的网络配置、端口通信、防火墙配置、安全组配置等多个环节相关联。任意一个环节出现问题,都会导致网站无法访问。本节操作介绍网站无法访问时的排查思路。
视频帮助
排查思路
如果打开网站有报错提示信息,首先应该根据报错提示信息,排查可能的原因。
您可以参考中错误码说明排查可能原因。
如果报错提示信息无法帮助您准确定位问题,请记录资源信息和问题时间,然后单击,填写工单信息,获取九游平台的技术支持。
你还可以根据以下排查思路进行问题定位,排查思路根据可能原因的出现概率进行排序,建议您从高频率原因往低频率原因排查,从而帮助您快速找到问题的原因。
如果解决完某个可能原因仍未解决问题,请继续排查其他可能原因。
可能原因 |
处理措施 |
---|---|
检查端口通信 |
检查web端口是否正常监听,详细操作请参考检查端口通信问题。 |
检查安全组规则 |
检查安全组是否放通web端口,详细操作请参考检查安全组规则。 |
检查防火墙配置 |
测试防火墙关闭后是否可以正常访问,详细操作请参考检查防火墙配置。 |
检查云服务器路由配置 |
查看云服务器路由表中网关信息配置是否正确,详细操作请参考检查云服务器路由配置。 |
检查本地网络 |
更换手机热点或其他网络测试是否可以正常访问,详细操作请参考检查本地网络。 |
检查云服务器cpu利用率 |
定位影响云服务器cpu利用率高的进程并优化进程,详细操作请参考检查云服务器cpu利用率。 |
检查域名解析(适用于域名访问的场景) |
域名解析配置是否配置正确,详细操作请参考检查备案与域名解析是否正常(使用域名无法访问时适用)。 |
检查域名备案(适用于域名访问的场景) |
网站的域名和服务器ip是否备案成功,详细操作请参考检查备案与域名解析是否正常(使用域名无法访问时适用)。 |
检查端口通信问题
确保服务进程和端口正常工作,处于listen状态。表2为常见tcp状态。
- linux操作系统云服务器端口通信问题排查
使用netstat -antpu命令检查服务的状态,确认端口是否正常监听。
例如:netstat -antpu |grep sshd图2 查看端口监听状态_linux
- 如果端口被正常监听,请执行检查安全组规则。
- 如果端口没有被正常监听,请检查web服务进程是否启动或者正常配置。
- windows操作系统云服务器端口通信问题排查
使用远程端口检测命令:
- 打开cmd命令行窗口。
- 执行netstat -ano | findstr “端口”命令查看进程使用的端口号。
例如:netstat -ano | findstr “80”图3 查看端口监听状态_windows
- 如果端口被正常监听,请执行检查安全组规则。
- 如果端口没有被正常监听,请检查web服务进程是否启动或者正常配置。
tcp状态 |
说明 |
对应场景 |
---|---|---|
listen |
侦听来自远方的tcp端口的连接请求 |
正常tcp服务端 |
established |
代表一个打开的连接 |
正常tcp连接 |
time-wait |
等待足够的时间以确保远程tcp接收到连接中断请求的确认 |
已关闭的tcp连接,一般1分钟后清除。 |
close-wait |
等待从本地用户发来的连接中断请求 |
应用程序bug,没有关闭socket。出现在网络中断后。一般是进程死循环或等待其他条件。可以重启对应进程。 |
fin-wait-2 |
从远程tcp等待连接中断请求 |
网络中断过,需要12分钟左右自行恢复。 |
syn-sent |
再发送连接请求后等待匹配的连接请求 |
tcp连接请求失败。一般是服务端cpu占用率过高,处理不及时导致。ddos攻击也会出现此情况。 |
fin-wait-1 |
等待远程tcp连接中断请求,或先前的连接中断请求的确认 |
网络中断过,此状态可能不会自行修复(等15分钟以上确认),如果长期占用端口需要重启os恢复。 |
检查安全组规则
- 登录管理控制台。
- 选择“计算 > 弹性云服务器”。
- 在弹性云服务器列表,单击待变更安全组规则的弹性云服务器名称。
- 选择“安全组”页签,展开安全组规则。
- 单击“更改安全组规则”
- 根据网站使用的端口配置新的安全组规则,放行网站使用的端口。
放行端口的详细操作,请参见。
检查防火墙配置
- linux操作系统云服务器,关闭防火墙后测试是否可以正常访问。
以centos 6.8操作系统80端口为例。
- 使用iptables -nvl --line-number命令查看已配置的防火墙策略。
- 依次执行以下命令放行80端口。
iptables -a input -p tcp --dport 80 -j accept
iptables -a output -p tcp --sport 80 -j accept
- 使用service iptables save命令保存添加的规则。
- 使用service iptables restart命令重启iptables。
- 使用iptables -nvl --line-number命令查看增加的规则是否生效。
- 关闭防火墙后,重新测试网站访问是否正常。
- windows操作系统云服务器,关闭防火墙后测试是否可以正常访问。
- 登录windows云服务器。
- 单击桌面左下角的windows图标,选择“控制面板 > windows防火墙”。
- 单击“启用或关闭windows防火墙”。
查看并设置防火墙的具体状态:开启或关闭。
- 关闭防火墙后,重新测试网站访问是否正常。
检查云服务器路由配置
- linux操作系统云服务器
- 使用route命令查看路由策略,确保0.0.0.0的默认路由指向网关,使用的ip和网关在相同网段,如下图第1行和第3行所示。
- 使用ifconfig或者ip addr命令查看实例的ip地址。
图4 ifconfig命令查看ip地址
图5 ip addr命令查看ip地址
- 使用route -n命令通过路由表查看网关。
- windows操作系统云服务器
- 打开cmd命令行窗口。
- 执行ipconfig命令查看实例的ip地址。
图7 ipconfig命令查看ip地址
- 执行route print命令通过路由表查看网关。
图8 route print命令查看网关
检查本地网络
更换手机热点或其他网络测试是否可以访问网站。
如果可以正常访问说明云服务器的网络配置正常,请排除本地网络故障后重新测试访问网站。
检查云服务器cpu利用率
云服务器的带宽和cpu利用率过高可能导致网站无法访问。如果您已经通过云监控服务,当cpu或带宽利用率高时,系统会自动发送告警给您。
- 定位影响云服务器带宽和cpu利用率高的进程。
- windows操作系统本身提供了较多工具可以定位问题,包括任务管理器、性能监视器(performance monitor)、资源监视器(resource monitor)、process explorer、xperf (windows server 2008 以后)和抓取系统full memory dump检查。
- linux操作系统执行top命令查看当前系统的运行状态。
- 问题处理:排查进程是否正常,并分类进行处理。
- 正常进程:优化程序,或参考变更云服务器配置。
- 异常进程:建议您手动关闭进程,您也可以借助第三方工具关闭进程。
检查备案与域名解析是否正常(使用域名无法访问时适用)
完成上述的排查后,请使用弹性公网ip进行访问。如果使用ip地址可以访问,但是域名访问失败,则可能是域名备案或者解析相关问题造成网站无法访问。
网站的访问与域名的状态、域名实名认证状态、网站备案状态、解析是否生效、网站网络环境等多个环节有关系。在这些环节中,任意一个环节出现问题,都会导致网站无法访问。
关于域名与备案解析的排查思路请参考。
- 检查域名备案。
备案是中国大陆的一项法规,网站的域名和服务器ip需要进行备案,备案成功后您的域名才可以指向服务器开通访问。
- 如果您使用中国大陆节点服务器提供互联网信息服务,需要先在服务器提供商处提交备案申请,备案成功后域名才可以指向服务器开通访问。
- 如果您使用的是中国大陆地区以外的服务器(包括中国港澳台及其他国家、地区)提供互联网信息服务,无需备案。
- 如果您的域名已在其他接入商办理过备案并取得备案号,现在更换到华为云服务器进行域名解析(或者二级域名指向华为云),因接入商有变更,需要您在华为云做接入备案。
- 请确保网站内容与备案信息一致,且备案信息真实有效。
- 如果您的网站已备案成功仍无法访问,请等待一个工作日。由于信息同步延迟,备案通过一个工作日后网页会自动开放。
- 检查域名解析。
如果域名已备案,但未正确配置域名解析也可能会导致域名无法ping通。
您可以dns服务控制台查看域名解析详情。
- 检查dns服务器配置。
如果ping 域名显示找不到主机可能是dns服务器速度慢,导致的访问卡顿,建议您参考案例:进行优化。
相关文档
意见反馈
文档内容是否对您有帮助?
如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨