CDN - 访问出现 503 排查

简介: 场景用户在阿里云做 CDN 加速后,加载 URL 时返回 503 状态码;curl -I http://z2.alx.yas.com/uploads/basedata/images/1fcb73c76821610a6d265af01a10f045.

场景

用户在阿里云做 CDN 加速后,加载 URL 时返回 503 状态码;

curl -I http://z2.alx.yas.com/uploads/basedata/images/1fcb73c76821610a6d265af01a10f045.png 
HTTP/1.1 503 Service Temporarily Unavailable
Server: Tengine
Content-Length: 0
Connection: keep-alive
Via: cache29.l2cn1828[0,503-256,M], cache7.l2cn1828[10002,0], vcache5.cn627[10025,503-1281,M], vcache5.cn627[10022,10026,0]
X-Swift-Error: forward no peer valid
Age: 0
Ali-Swift-Global-Savetime: 1566887228
X-Cache: MISS TCP_MISS dirn:-2:-2
X-Swift-SaveTime: Tue, 27 Aug 2019 06:27:08 GMT
X-Swift-CacheTime: 1
X-Swift-Error: orig response 5xx error
Timing-Allow-Origin: *
EagleId: 7909f64515668872085932615e

问题排查

第一、客户端可以用 curl、wget 或者浏览器测试,将返回 503 时的 http 响应头保留下来;

curl -I http://z2.alx.yas.com/uploads/basedata/images/1fcb73c76821610a6d265af01a10f045.png --resolve basedata.azoyacdn.com:80:121.9.46.110
HTTP/1.1 503 Service Temporarily Unavailable
Server: Tengine
Content-Length: 0
Connection: keep-alive
Via: cache29.l2cn1828[0,503-256,M], cache7.l2cn1828[10002,0], vcache5.cn627[10025,503-1281,M], vcache5.cn627[10022,10026,0]
X-Swift-Error: forward no peer valid
Age: 0
Ali-Swift-Global-Savetime: 1566887228
X-Cache: MISS TCP_MISS dirn:-2:-2
X-Swift-SaveTime: Tue, 27 Aug 2019 06:27:08 GMT
X-Swift-CacheTime: 1
X-Swift-Error: orig response 5xx error
Timing-Allow-Origin: *
EagleId: 7909f64515668872085932615e

从 CDN 返回的 503 http 响应头可以看到几个重要信息:

1) X-Swift-Error: orig response 5xx error

  • 通过 X-Swift-Error 返回的信息,可以初步判断 503 是因为 CDN 回源后响应的 503;

2) http 返回的 Via 头

  • Via 头含义,从右到左依次是 L1 节点回源字段,vcache5.cn627[10025,503-1281,M], vcache5.cn627[10022,10026,0] ,L2 节点的回源字段 cache29.l2cn1828[0,503-256,M], cache7.l2cn1828[10002,0]
  • 在 L2 的字段段看到 [] 内的 10002 就是回源的超时时间,综合判断可知是因为 L2 回源后,超时未得到原站的响应(比如读、写超时)导致的 503;

第二、固定原站做七层测试

Linux 测试

原站是 80 端口

curl -vo /dev/null "http://z2.alx.yas.com/" -x 原站IP:原站端口

原站是 443 端口

curl -vo /dev/null "http://z2.alx.yas.com/" --resolve "z2.alx.yas.com:原站IP:原站端口"

Windows 测试

1)先编辑: C:\Windows\System32\drivers\etc\hosts
2)在 hosts 中配置原站 IP: 原站IP z2.alx.yas.com
3)浏览器发起 http/https 请求,如果原站 http 端口不是 80 ,浏览器访问时需要在域名后手动加上原站的自定义端口 http://z2.alx.yas.com:8080

第三、测试原站四层的端口,看响应时间是否正常

time telnet 原站IP 原站端口,如果发现四层的端口响应很慢,侧面说明原站七层的应用负载较高,或者服务器负载异常,需要原站自查;

第四、对原站做网络测试

ping 原站IP -c 50 -s 1460 -i 0.1

mtr -n 原站IP

通过以上两个网络测试命令,看下普通的客户端到原站的延迟是否稳定,丢包率是否异常,如果普通的客户端测试到原站延迟、丢包都有异常,那 CDN 回源可能也有问题,发现原站如果网络异常,需要客户先自查下;

第五、以上四点测试均正常,需要 CDN 测进行日志分析,请提交工单到阿里云;

提供如下信息:

  • 1)加载 503 的 URL ,最好能提供报错的完整响应头;
  • 2)客户端 ping 下 CDN 域名看目标的 CDN ;
  • 3)大面积的 503 ,还是个别客户加载 503 ,大面积的问题存在共性;
  • 4)客户端的 IP(获取工具 https://cdn.dns-detect.alicdn.com/https/doc.html),以及大致的错误时间点;
目录
相关文章
|
边缘计算 缓存 监控
【CDN 排查方案-1】认识 CDN 网络调优
面向不同业务类型的网站,很多人都选择了 CDN 加速来优化自己的网站,目的在于加速网民的体验效果,赢取流量。 在网站调优的过程中,如果正确理解基于 CDN 的网络调优以及正确的配合 CDN 服务方来快速提供调优信息做了详细的讲解, 希望对大家有用,希望对从事 CDN 的人和对网络调优感兴趣的人能有作用。
【CDN 排查方案-1】认识 CDN 网络调优
|
2月前
|
缓存 网络安全 数据安全/隐私保护
使用阿里云国际CDN加速后网站无法访问的排查步骤
使用阿里云国际CDN加速后网站无法访问的排查步骤
|
7月前
|
域名解析 缓存 安全
cdn服务器连接异常怎么办
当遇到CDN服务器连接异常时,可采取以下步骤排查:检查CDN配置,包括域名解析和防火墙设置;清空CDN缓存;测试网络连接;确认源服务器状态;更换CDN服务器;等待恢复;联系服务商;检查本地电脑安全;检查程序代码;保持更新和维护。具体解决步骤需根据实际情况调整。
620 0
|
JavaScript 前端开发 CDN
项目部署在内网导致CDN请求失败问题解决
项目部署在内网导致CDN请求失败问题解决
项目部署在内网导致CDN请求失败问题解决
|
缓存 运维 负载均衡
CDN请求过程详解
CDN主要是让用户访问资源的时候,能从离用户距离很近的CDN节点进行获取,不必到真正提供服务的机器上获取。所以CDN可以
|
域名解析 安全 对象存储
CDN访问异常篇之403错误
使用阿里云 CDN 加速站点访问后出现403错误,通常情况下可能是由域名配置、CDN安全策略以及源站响应403导致。CDN的Response Headers返回的错误字段明确标识了该403是什么原因引起的,本文详细介绍了CDN常见的引发403错误的问题场景。
13020 2
CDN访问异常篇之403错误
|
缓存 安全 网络协议
CDN访问异常篇之502/503/504错误
当客户使用阿里云 CDN 加速站点访问后,客户端的请求将首先发送到 CDN 的 L1 节点(一级节点),再回源到L2节点(二级节点),然后再回源到源站。因此如果访问过程中出现问题就可能涉及到多级网络链路的问题。当CDN回源源站异常失败时就会出现5xx的错误,主要包括502 Bad Gateway、503 Service Temporarily Unavailable、504 Gateway Time-out。很多情况下是因为一些细节被忽略了导致了错误的发生,本文介绍了一些常见的引发5xx错误的问题场景。
13348 2
CDN访问异常篇之502/503/504错误
|
缓存 tengine 前端开发
CDN - 跨域失败排查
某个客户在阿里云 CDN 配置了加速域名 al.p2.com ,客户自己的主站域名 www.a.com 加载 al.p2.com 下的资源出现跨域的报错; 了解跨域 跨域资源共享(CORS) 是一种机制,它使用额外的 HTTP 头来告诉浏览器 让运行在一个 origin (domain) 上的Web应用被准许访问来自不同源服务器上的指定的资源。
CDN - 跨域失败排查
|
缓存 网络协议 调度
【CDN 常见问题】CDN 接入配置及常见问题
CDN顺利接入线上系统的域名是每个客户头疼的问题,本文档通过详述CDN接入配置各步骤配置以及每部设置常遇到的疑惑点进行解惑,让客户可以将顺利迁移至CDN提供加速服务。
【CDN 常见问题】CDN 接入配置及常见问题
|
Web App开发 域名解析 缓存
接入CDN/WAF后出现循环重定向问题的排查记录
一例客户网站接入CDN/WAF后,出现301循环重定向的问题处理
接入CDN/WAF后出现循环重定向问题的排查记录