WordPress设置CDN后字体无法正确加载的解决办法

马谦马谦马谦 Wordpress评论1,483字数 595阅读1分59秒阅读模式

一、问题描述

给网站加了CDN后,网页的部分字体加载不出,同时一些图标也会显示异常:

WordPress设置CDN后字体无法正确加载的解决办法-图片1

控制台报以下错误:

WordPress设置CDN后字体无法正确加载的解决办法-图片2

二、跨域

跨域问题指的是网页源站和网页内的资源不处于同一站点,由于安全问题浏览器将会限制网页对站点的访问。一个简单的例子:

A站是一个银行网站,登录后会显示用户的余额等信息,此时B站点获取到A的cookies等信息,然后把自己伪装成银行的网站,用户进入到A站点进行操作,B站利用获取到的cookies等信息到A站来提取请求,成功获取到用户的信息,造成了安全问题。

三、解决方法

利用CORS机制可以解决跨域问题,简单的做法就是HTTP请求头中加入Access-Control-Allow-Origin字段。在nginx中,可以在server块添加以下内容允许跨域:

domain改成需要跨域的域名即可,或者直接使用*允许所有跨域访问。

对于wordpress 字体无法访问的情况可以在配置文件中加入以下代码:

保存重启nginx就可以了,如果需要立即生效还需要手动刷新cdn缓存——这是很关键的一步,如果没有刷新cdn缓存,就算是修改了nginx,把浏览器刷爆也是没用的(不要问我怎么知道的。。。往事不堪回首)。

 

 
马谦马谦马谦
  • 本文由 马谦马谦马谦 发表于 2017年11月25日12:30:40
  • 转载请务必保留本文链接:https://www.dyxmq.cn/cloud/wordpress/wordpress-cors.html
匿名

发表评论

匿名网友
:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:
确定

拖动滑块以完成验证