故障类问题
使用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。我方会有工程师协助您排查解决问题。