CDN访问白屏

问题描述

客户反馈接入阿里云CDN之后,访问页面出现白屏的现象,导致页面无法正常访问。

问题排查

  1. 页面白屏通常因加载的静态资源(如JavaScriptCSS文件)异常导致。首先需要对比直接访问源站与通过CDN访问时,网络请求的差异。

    1. 通过绑定本地hosts文件使域名解析至源站IP,直接访问源站并保存网络请求的HAR文件。

    2. 通过CDN访问相同页面,保存网络请求的HAR文件。

    3. 对比两个HAR文件,定位响应异常的资源。

  2. 如果确认问题由CDN缓存的某个资源引起,请刷新相关资源的缓存。

  3. 检查是否在CDN上配置了可能影响资源请求的功能,例如URL改写、302跟随回源等。

解决方案

  1. 如果配置了302跟随回源,请参考回源301/302跟随关闭相关功能。

  2. 使用刷新缓存API来刷新受影响的页面URL缓存,参数中的Force填写true

    说明

    必须使用刷新缓存API来提交刷新任务。因为CDN缓存刷新机制的原因,使用控制台的目录刷新和正则刷新后,有可能会使用旧资源,更多关于缓存刷新机制可以参考CDN的缓存刷新机制