百度云内容分发网络CDN故障类问题

使用CDN后网站有文件不显示或网站出现403,应该如何处理?
百度智能云CDN为避免缓存的文件不完整的问题,会在CDN的节点上使用Content-Length来校验文件长度是否正确。所以需要源站的文件携带Content-Length或transfer-encoding参数。

针对报错403问题,您可以排查以下部分:

核实下源站是否正常,是否返回403。
核实下防盗链、refer、IP黑白名单、waf配置是否正常。
如有违规内容(黄色等)也会导致403.
如问题未解决,建议您提交 存储和CDN/内容分发网络CDN 工单详细描述您的问题,并提供:加速域名、本地ping加速域名的截图、附体复现步骤或异常的URL,我方会有工程师给您排查解决问题。

 

CDN中报了大量的404是什么情况?
CDN 404报错一般由以下几点导致:

源站404导致CDN为404,建议直接将域名解析源站后测试下。
由于访问了老的缓存网页导致,建议您在控制台刷新下CDN缓存。之后本地浏览器的缓存也清空后再测试下。
可能是CDN节点有问题导致,建议您ping 加速域名,并将结果的截图,提交到工单中,我方会有工程师给您排查解决问题。

 

 

流量命中率为0,怎么解决这个问题?
CDN命中率低一般是由于新接入的cdn,缓存文件还不多,或者源站类型导致可缓存的内容少网站访问量低,过期时间短,命中的文件少,控制台未设置文件缓存或Httpheader导致的无法缓存等,您可以具体查看下您的网站访问量情况和设置的文件缓存规则情况。

 

CDN管理日志打不开,自动跳转对象存储BOS?
目前CDN日志管理是依赖于BOS服务的,您可以开启BOS服务后,直接进行下载CDN日志(注:只要不往自身账号BOS中存储数据,就不会产生BOS费用)。

 

CDN域名删除后怎么找回CDN日志?
可以重新添加下您删除的CDN域名,然后在控制台日志管理内下载对应的日志。

只有重新添加CDN域名后才可以查询到日志,删除后没有CDN域名是无法查询到日志的。

 

CDN报错502
针对报错502问题,您可以排查以下部分:

源站502导致CDN报错502,您检查下源站
证书链异常导致502。
源站资源获取超过60S。

CDN回源未缓存gzip压缩文件
CDN回源会在请求头中添加Via头标识该请求来源于代理服务器,源站(Nginx、iis)默认不会响应带via头请求gzip、br等压缩文件。 在源站开启了gzip压缩功能的前提下,修改如下值:

1、如果您的源站是Nginx,在Nginx配置文件中gzip_proxied值修改为any(标识所有来自于代理服务器的请求都会响应压缩内容),重新加载Nginx配置文件;详情可参考Nginx官方文档。

2、如果您的源站是Microsoft-IIS,可以将noCompressionForProxies值改为true,重启服务;详情可参考microsoft-iis官方文档。

通过浏览器访问CDN链接,如果响应头中返回了Content-Encoding: gzip,说明CDN回源获取到了gzip压缩内容。

如果问题未解决,建议您进行如下排查:

1、查看浏览器请求时,是否携带accept-encoding: gzip, deflate, br;

2、通过curl命令访问源站:

2.1、 `curl -voa ‘http://[Domain]/[Uri]’ -x [OriginalIP]:[Port] -H ‘Accept-Encoding: gzip, deflate, br’`
如果响应头返回了Content-Encoding: gzip,说明源站是能正常返回压缩文件的。
2.2、 `curl -voa ‘http://[Domain]/[Uri]’ -x [OriginalIP]:[Port] -H ‘Accept-Encoding: gzip, deflate, br’ -H ‘Via:Baidu-CDN-Node3’`
如果响应头未返回Content-Encoding: gzip,请检查源站配置是否生效。
如问题未解决,建议您提交存储和CDN/内容分发网络CDN工单详细描述您的问题,并提供:加速域名、本地ping加速域名的截图、附体复现步骤或异常的URL。我方会有工程师协助您排查解决问题。