首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >从静态域提供字体会导致CORS问题. Wordpress - Nginx

从静态域提供字体会导致CORS问题. Wordpress - Nginx
EN

Stack Overflow用户
提问于 2016-11-04 11:02:49
回答 1查看 4.3K关注 0票数 1

我有一个Wordpress网站安装在Nginx / Ubuntu,数字海洋液滴。

目前,我正在优化页面的性能。Pingdom建议通过无炊具域提供静态文件。我已经设置了它,现在它正在为来自静态子域的文件服务。

然而,在字体方面,我面临CORS问题:

使用Chrome控制台

从源'http://static.ux-labs.com/themes/uxlabs/betheme/fonts/mfn-icons.woff?3416171‘到字体'http://static.ux-labs.com’的访问已被CORS策略阻止:请求的资源上没有“访问控制-允许-原产地”标题。 因此,“http://ux-labs.com”源是不允许访问的。(索引):1从源'composer/assets/lib/bower/font-awesome/fonts/fontawesome-webfont.woff2?v=4.5.0‘到字体的访问“http://static.ux-labs.com”已被CORS策略阻止:请求的资源上没有“访问-控制-允许-原产地”标题。 因此,“http://ux-labs.com”源是不允许访问的。

我尝试添加主题header.php

代码语言:javascript
复制
<?php /** @package WordPress @subpackage Default_Theme  **/
    header("Access-Control-Allow-Origin: *"); 
?>

但这不起作用。

我还尝试了添加nginx server.conf

代码语言:javascript
复制
location ~* \.(eot|otf|svg|ttf|woff|woff2)$ {
    add_header Access-Control-Allow-Origin *;
    expires max;
}
EN

回答 1

Stack Overflow用户

发布于 2016-12-19 23:03:27

它应该像您在“标准”的nginx配置中所写的那样工作。

代码语言:javascript
复制
location ~* \.(eot|otf|svg|ttf|woff|woff2)$ {
    add_header Access-Control-Allow-Origin *;
    expires max;
}

需要注意的一点是,您希望确保在regex中没有具有这些文件扩展名的其他位置块。我用字体文件扩展名声明了两个块,加载了第一个块,但没有加载CORS策略块。一旦我只加载了一个带这些扩展的块,一切都很好。

如果没有看到您的完整配置,就很难判断它可能会在哪里失败。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40421035

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档