如何修复"缺少跨域资源共享(CORS)响应标头"webfont问题?

Mel*_*Dog 32 .htaccess fonts webfonts font-face cors

由于某种原因,字体已停止在我的网站上呈现.字体存储在本地,与站点位于同一服务器上.

我查了一下这个问题似乎是一个Missing Cross-Origin Resource Sharing (CORS) Response Header但是我无法理解这个问题的解决方案.

所有各种网站都说要做的就是使用: Access-Control-Allow-Origin:*

但由于我主要是前端,我不知道该放在哪里.这是我的主人可以帮助的东西吗?

我该怎么做才能解决这个问题?

编辑:

有问题的网站是:http://cyclistinsuranceaustralia.com.au/

例如,右上角的电话号码应为Bebas字体,但默认为Impact.

在控制台中,我得到错误:

来自" http://www.cyclistinsuranceaustralia.com.au "的字体已被跨源资源共享策略阻止加载:"Access-Control-Allow-Origin"标题的值为" http:// www. cyclistinsuranceaustralia.com.au '不等于提供的原产地.因此,不允许来源" http://cyclistinsuranceaustralia.com.au "访问.

我联系我的主持人说:

Access-Control-Allow-Origin "http://www.cyclistinsuranceaustralia.com.au"
Run Code Online (Sandbox Code Playgroud)

在我的.htaccess文件中,但这没有变化.

Cro*_*ses 28

如果你只是对使用感兴趣 Access-Control-Allow-Origin:*

您可以.htaccess在站点根目录下使用此文件执行此操作.

Header set Access-Control-Allow-Origin "*"
Run Code Online (Sandbox Code Playgroud)

这里有一些有用的信息:http: //enable-cors.org/server_apache.html


C. *_*Lee 22

在您的HTML中,您设置了"基本"标记:

<base href="http://www.cyclistinsuranceaustralia.com.au/">
Run Code Online (Sandbox Code Playgroud)
  1. 如果您不需要,请从HTML中删除该行.从http://cyclistinsuranceaustralia.com.au查看时,这应该使字体起作用.
  2. 您可能需要将http://www.cyclistinsuranceaustralia.com.au重定向到http://cyclistinsuranceaustralia.com.au


小智 5

我假设你的主机正在使用C-Panel - 它可能是HostGator或GoDaddy.在这两种情况下,他们都使用C-Panel(事实上,许多主机都这样做)使您的服务器管理尽可能简单,最终用户.即使您通过其他人托管 - 看看您是否可以登录某种管理面板并找到可以编辑的.htaccess文件.(注意:之前的时期仅表示它是"隐藏"文件/目录).

找到htaccess文件后,添加以下行:

  1. Header set Access-Control-Allow-Origin "*"只是为了看它是否有效. 警告:请勿在生产服务器上使用此行

它应该工作.如果没有,请打电话给您的主人并询问他们为什么线路无法工作 - 他们可能会从那里快速帮助您.

  1. 完成上述工作后,请更改*为请求域的地址http://cyclistinsuranceaustralia.com.au/.您可能会发现规范寻址(包括www)的问题,如果是这样,您可能需要配置主机以进行重定向.虽然这是一个不同的小桥.你至少会在正确的地方.