文档首页/ 内容分发网络 CDN/ 故障排除/ 访问CDN加速资源后返回4XX状态码
更新时间:2024-06-06 GMT+08:00

访问CDN加速资源后返回4XX状态码

返回403状态码

访问CDN加速后的资源,返回403状态码,请您排查以下配置:

  1. 请确认您的源站能否正常访问,测试步骤详见排查访问异常是CDN节点问题还是源站问题
  2. 请确认您的加速域名CNAME配置是否正确,请确认CNAME与加速域名匹配,如下图所示,配置CNAME的具体操作请参考:配置CNAME域名解析

  3. 如果您设置了referer防盗链,请确认您的访问地址是否符合referer防盗链规则,访问请求到达CDN节点后,CDN节点会根据配置的referer黑白名单规则,对访问者的身份进行识别和过滤,符合规则的可以顺利访问到该内容。如果不符合规则,该访问请求将会被禁止,返回403禁止访问的错误信息。具体规则请参考防盗链配置
  4. 如果您的源站为OBS桶,源站配置了referer防盗链白名单,且不允许为空,而CDN侧未配置referer防盗链白名单。如果原始请求不带referer防盗链规则,cdn回源时也不携带referer防盗链规则,将导致CDN无法回源而返回403状态码,请在OBS侧修改referer防盗链规则,配置方法请参考防盗链配置
  5. 如果您的源站为OBS私有桶,且未在CDN侧开启OBS委托授权,访问会返回403。请在CDN侧开启OBS委托授权,配置方法请参考OBS委托授权
  6. 如果您设置了IP黑白名单,请确认您的IP黑白名单配置,如果您的访问地址在IP黑名单(或者没有在白名单)中,访问请求将会被禁止,返回403禁止访问的错误信息。具体规则请参考IP黑名单配置
  7. 如果您设置了UA黑白名单,请确认您的UA黑白名单配置,如果您的访问地址在UA黑名单(或者没有在白名单)中,访问请求将会被禁止,返回403禁止访问的错误信息。具体规则请参考UA黑名单配置
  8. 如果您设置了URL鉴权,请确认您的鉴权有效时间,如果终端用户访问URL的时间在鉴权有效时间范围以外,该访问请求会返回将会被禁止,返回403禁止访问的错误信息。具体规则请参考URL鉴权

返回404状态码

访问CDN加速后的资源,返回404状态码,请按照以下步骤排查:

  1. 测试源站的URL访问是否404,排查是否是源站异常,测试步骤详见排查访问异常是CDN节点问题还是源站问题
  2. 如果源站访问正常,请登录CDN控制台,在域名基本配置中检查回源HOST是否正确,详见回源HOST
    源站与回源HOST的区别如下所示:
    • 源站:源站决定了用户回源时访问的地址,即源站服务器IP。
    • 回源HOST:回源HOST决定了回源时访问到该IP地址上的具体站点。

      示例:源站IP为x.x.x.x,加速域名www.example.com,源站中部署了多个站点:www.a.com、www.b.com。

      • 如果您想要CDN回源到本服务器,您需要在CDN侧将源站配置为:x.x.x.x。
      • CDN默认回源HOST为加速域名www.example.com。如果您需要访问到的站点为www.a.com,您就需要将回源HOST配置为www.a.com;如果您需要访问到的站点为www.b.com,您就需要将回源HOST配置为www.b.com。
    • 如果您的源站是OBS桶,则回源HOST必须是OBS桶域名。
    • 如果您的源站为第三方对象存储桶,您需要将回源HOST修改为您的对象存储桶域名。
  3. 检查源站配置是否正确,登录CDN控制台,在域名基本配置中检查源站的配置是否为该域名的源站服务器,如果不是,请修改成对应的服务器IP或域名。

返回405状态码

问题现象:访问CDN加速后的资源,发现无法访问,通过“F12”>“Network”>“headers”查看,发现返回405状态码,如下图所示:

原因:响应头不支持“POST”请求方法。

解决办法:修改HTTP header配置。添加一条取值为“POST”、参数为“Access-Control-Allow-Methods”的规则。配置方法详见HTTP header配置