a网站加载了b网站的资源(比如字体)ttf|otf|eot|woff|svg|woff2的资源,未配置发现会提示跨域

目录

问题

apache

nginx


问题

a网站加载了b网站的资源(比如字体)ttf|otf|eot|woff|svg|woff2的资源,未配置发现会提示跨域

分析了下根源还是资源请求跨域,为啥css js正常能获取呢,这就跟web服务的资源配置有关系了

apache

复制代码
<FilesMatch ".(ttf|otf|eot|woff|svg|woff2)$">
  <IfModule mod_headers.c>
    Header set Access-Control-Allow-Origin "*"
  </IfModule>
</FilesMatch>

重启apaches

nginx

复制代码
server {
    # ... 其他服务器配置 ...

    location ~* \.(ttf|otf|eot|woff|svg|woff2)$ {
        add_header Access-Control-Allow-Origin "*";
        # 如果您希望限制允许跨域的域名,可以使用以下方式:
        # add_header Access-Control-Allow-Origin "http://yourdomain.com";

        # 可选:在响应头中添加其他 CORS 相关设置
        add_header Access-Control-Allow-Methods "GET, OPTIONS";
        add_header Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Accept";
        
        # 可选:设置预检请求(OPTIONS 请求)的缓存时间,单位为秒
        # add_header Access-Control-Max-Age 3600;

        # ... 其他可能需要的配置 ...
    }

    # ... 其他服务器配置 ...
}

上述配置通过使用 location 挝定了匹配特定字体文件后缀的请求,并通过 add_header 添加了 Access-Control-Allow-Origin 头部,从而允许跨域请求。您可以根据需要进行其他 CORS 相关的头部设置。

请注意,为了确保 Nginx 服务器已经启用了 ngx_http_headers_module 模块,因为该模块提供了 add_header 指令。

完成配置后,请确保重新加载 Nginx 以使更改生效:

复制代码
sudo service nginx reload

以上只是一个基本的跨域配置示例,具体的设置可能会因您的需求而有所不同。在实际使用中,建议根据具体情况进行调整。

相关推荐
yy55279 小时前
Nginx 性能优化与监控
运维·nginx·性能优化
hzhsec17 小时前
AI Security Agent:用自然语言做安全巡检,AI 自己跑命令
人工智能·安全·运维开发·ai编程
专注_每天进步一点点1 天前
mysql-connector-j(8.0 及以上版本,包括你使用的 8.3.0)并非采用 GPL 许可证,因此你在项目中引入该依赖时,不需要遵循 GPL 的开源要求(比如开源你的整个项目)
数据库·mysql·apache
不爱学英文的码字机器1 天前
Apache RocketMQ+cpolar 让消息服务全网可达
apache·rocketmq
qq_172805591 天前
腾讯云WordPress遭遇Nginx 502问题排查与解决方案
nginx·腾讯云
李长渊哦1 天前
Nginx 反向代理实战:解决 IPv6 报错与跨网段访问指南
运维·nginx
小二·1 天前
HTTPS全链路解析:从证书申请到Nginx配置(含国密SM2实战)|网络安全
nginx·web安全·https
鸽芷咕1 天前
海量时序数据选型指南:从大数据架构演进看 Apache IoTDB 的崛起
大数据·数据库·架构·apache
洛菡夕2 天前
nginx安全防护与HTTPS部署实战
nginx·安全·https
刘晨鑫12 天前
Nginx性能调优
运维·nginx