華為云計(jì)算 云知識 接入CDN后,網(wǎng)頁顯示的內(nèi)容/下載文件/播放的視頻不正確?
接入CDN后,網(wǎng)頁顯示的內(nèi)容/下載文件/播放的視頻不正確?

 【最新活動】

在我們接入 CDN加速 服務(wù)后,可能會出現(xiàn)用戶訪問網(wǎng)站或者APP時(shí),顯示的內(nèi)容不正確、下載的文件不正確、播放的視頻不正確的情況,本文將通過排查思路和排查步驟來定位問題。

排查思路

是否緩存規(guī)則設(shè)置有誤

是否本地緩存的問題

資源更新后節(jié)點(diǎn)未刷新

是否多個(gè)源站文件不一致

是否訪問資源被劫持

 

排查步驟

①檢查域名緩存規(guī)則配置

可能是緩存規(guī)則配置不正確,基本的緩存過期時(shí)間設(shè)置建議如下:

對于動態(tài)文件(如php、jsp、asp等),請?jiān)O(shè)置成0秒,即不緩存,每次請求都回源獲取。

對于不經(jīng)常更新的靜態(tài)文件(如.jpg、.zip等),建議將緩存過期時(shí)間設(shè)置成1個(gè)月以上。

對于頻繁更新的靜態(tài)文件(如js、css等),請根據(jù)實(shí)際業(yè)務(wù)情況設(shè)定。

可能是緩存優(yōu)先級設(shè)置不正確,導(dǎo)致緩存設(shè)置未生效。優(yōu)先級取值范圍為1-100,數(shù)值越大優(yōu)先級越高。

示例:您需要設(shè)置一條.jpg文件,緩存過期時(shí)間為2天的規(guī)則,設(shè)置如下:

 

 

圖中兩條緩存規(guī)則:所有文件緩存過期時(shí)間為30天,優(yōu)先級為8,.jpg文件緩存過期時(shí)間2天,優(yōu)先級為2。當(dāng)用戶請求訪問某.jpg文件時(shí),由于所有文件這條優(yōu)先級較高,會自動匹配,文件在CDN節(jié)點(diǎn)的緩存時(shí)間為30天而不是您期望的緩存2天。

更多緩存設(shè)置請參考如何設(shè)置緩存過期時(shí)間。

②確認(rèn)是否是本地緩存問題

請清除瀏覽器緩存后再測試,確認(rèn)是否是瀏覽器緩存的問題。

③源站更新資源而CDN節(jié)點(diǎn)未刷新

如果您的源站內(nèi)容更新,沒有在CDN執(zhí)行刷新操作,CDN節(jié)點(diǎn)緩存的舊內(nèi)容還未過期,此時(shí)用戶請求依然會返回舊資源。您可以通過以下兩種方式進(jìn)行手動刷新。

登錄華為云控制臺,在服務(wù)列表中選擇“CDN”,左側(cè)菜單欄選擇“預(yù)熱刷新”,在緩存刷新頁簽完成刷新操作。

通過CDN服務(wù)所提供的緩存刷新、緩存預(yù)熱API接口,主動調(diào)用CDN API接口來更新CDN緩存,詳見API參考

說明:如果只更新某個(gè)文件,建議使用URL刷新對更新的文件進(jìn)行刷新。目錄刷新會針對目錄下所有文件進(jìn)行刷新,生效時(shí)間比較慢。

④排查是否是多個(gè)源站文件不一致導(dǎo)致

源站使用了 負(fù)載均衡 設(shè)備,后端存在多個(gè)服務(wù)器且它們存放的文件不一致。

CDN添加了備源站,主源站和備源站的文件不一致。

如果是以上兩種情況導(dǎo)致,請您將源站側(cè)資源統(tǒng)一,以免用戶獲得錯(cuò)誤文件。

⑤檢查資源訪問是否被劫持

請排查您的資源訪問是否被劫持,如果資源被劫持,請您通過配置HTTPS等方式提高您的安全防護(hù)等級。常見的判斷劫持的方法如下:

訪問網(wǎng)站后響應(yīng)302,但是location地址不是源站期望跳轉(zhuǎn)的地址??梢酝ㄟ^在客戶端瀏覽器Chrome上輸入需要訪問的URL,按F12,選擇“Network”>“headers”>“Response Headers”>“l(fā)ocation”查看。

訪問網(wǎng)站后,頁面顯示的內(nèi)容不是您的業(yè)務(wù)內(nèi)容。

如果排除以上幾點(diǎn)后問題仍然存在,請聯(lián)系客服或提交工單處理。