WordPress CDM加速之后字体等资源跨域(CORS)问题

启用了CDN加速之后,发现字体和部分图标无法加载,在控制台查看错误,发现报错是as been blocked by CORS policy: No ‘Access-Control-Allow-Origin’。提示我的域名与我的同一个域名的www存在跨域的问题。导致部分资源无法正常被页面加载。
跨域简单来说,就是浏览器的安全限制认为该网站调用的资源并非同源,简单来说就是浏览器觉得这个页面加载了其他网站的资源,它觉得不安全,直接给你不加载了,这就是所谓的同源策略。但是其实有可能这个资源只是因为协议、端口、域名等问题的不同。导致了浏览器错误触发了该安全机制。

解决方案

解决的方法有很多种,可以直接从WordPress下手也可以从服务端下手。由于我用的是nginx。我分享一个nginx针对字体等资源文件的配置跨域的配置代码。(该代码需要配置到nginx conf当中)

location ~ .*.(eot|ttf|ttc|otf|eot|woff|woff2|svg)(.*)
{
add_header Access-Control-Allow-Origin *;
}

配置完成之后,重启nginx即可看见相关资源可以正常加载了。

文章信息

作者:Byuc
来源:龙渊 - lrach.com
文章版权归作者所有,未经允许请勿转载。
点赞

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注