網(wǎng)站如果使用阿里云 CDN 的時(shí)候,圖片(使用oss、或者其他圖床的圖片)、圖標(biāo)字體可能會(huì)碰到無法顯示或者無法訪問的問題。這可能就是碰到了 CDN 的跨域問題。
一般在瀏覽器的控制臺(tái)出現(xiàn)下面的錯(cuò)誤信息:No 'Access-Control-Allow-Origin' header is present on the requested resource。
- Access to XMLHttpRequest at '****' from origin '*********' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
這是跨源資源共享 (CORS) 機(jī)制造成的,或通俗地譯為跨域資源共享。該機(jī)制使用附加的 HTTP 頭來告訴瀏覽器,是否允許運(yùn)行在一個(gè)源上的 Web 應(yīng)用訪問位于另一不同源的資源。
當(dāng)一個(gè) Web 應(yīng)用發(fā)起一個(gè)與自身所在源(域,協(xié)議和端口)不同的 HTTP 請(qǐng)求時(shí),它發(fā)起這個(gè) HTTP 請(qǐng)求的即跨源 HTTP 請(qǐng)求。
那么,如何解決這個(gè)問題呢?只需要按以下步驟,在 CDN 設(shè)置一下跨域訪問
- 登錄阿里云 CDN 控制臺(tái)。
- 在域名管理頁面,選擇 CDN 的域名,單擊管理。
- 單擊「緩存配置」 -「HTTP頭」,單擊添加。配置參數(shù),選擇「Access-Control-Allow-Origin」參數(shù),取值請(qǐng)根據(jù)現(xiàn)場(chǎng)環(huán)境而定,如果不清楚直接輸入 * 即可。
原文地址:https://www.suxing.me/wp-courses/2231.html