跨域請求
跨域請求指的就是不同的域名和端口之間的訪問。
由於 ajax 的同源策略影響。跨域請求默認是不被允許的。
Amazon AWS S3 文件桶與CloudFront配合時常會遇到無法加載外掛字體(.eot,.otf等)卻可以訪問js代碼的問題:Access to XML Http Request at xxx from origin xxx has been blocked by CORS policy =,我查詢各搜索引擎資料,整合了一些方案,列舉如下。
首先,轉到 S3 存儲桶的 Web 界面,單擊"屬性",然後單擊"權限",然後單擊"編輯 CORS 配置"。輸入此並保存它:
<CORSConfiguration> <CORSRule> <AllowedOrigin>*</AllowedOrigin> <AllowedMethod>GET</AllowedMethod> </CORSRule> </CORSConfiguration>
接下來,轉到CloudFront"分發"的 Web 界面,然後單擊"分發設置",然後單擊"行爲"選項卡。 選擇行爲(多個的話每個都要改,然後單擊"編輯"。
對於"轉發標題",將其從"無(改進緩存)"更改爲"白名單"。將顯示"白名單標題"部分。將"原點"添加到此列表。這告訴 Cloudfront 在緩存時考慮"原點"標頭。
最後,重命名字體文件以進行良好的度量,以便 Cloudfront 將它們視爲新文件。我執行了上述所有步驟,但仍收到 IE 錯誤,但當我重命名字體文件時,它就可以了。
參考鏈接: