apache - 内容安全策略阻止 Firefox 中的 svg 图标 Sprite

标签 apache svg firefox content-security-policy

我尝试在网上搜索,但没有成功。我一直使用 Chrome/Edge 在我的网站上工作,今天我尝试在 Firefox (93.0) 中打开它,我注意到我的图标都没有加载。此错误消息出现在控制台中:

Content Security Policy: The page’s settings blocked the loading of a resource at http://localhost/icons.svg (“default-src”).

这似乎表明 default-src 被用作后备。我正在使用此 CSP 运行 Apache 服务器:

Header set Content-Security-Policy "default-src 'none'; img-src 'self'; object-src 'none'; script-src 'self'; style-src 'self'; frame-ancestors 'none'; base-uri 'self'; form-action 'self'; connect-src 'self'"

图标 Sprite 的使用方式如下:

<svg class="icon"><use href="icons.svg#settings"></use></svg>

这只是 Firefox 中的一个问题,因为 Edge、Chrome 和 iOS Safari 都工作正常。有什么办法可以解决这个问题吗?

最佳答案

这是一个旧的 Firefox 浏览器错误 - img-src指令not cover来源在<use xlink:href=>标签。

Firefox 使用default-src控制<use xlink:href=>标签,因此要解决问题 make default-src 'self'而不是default-src 'none' .

关于apache - 内容安全策略阻止 Firefox 中的 svg 图标 Sprite ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69518794/

相关文章:

php - 将简单循环的迭代次数增加 1 会显着增加执行时间

php - mod_rewrite {QUERY_STRING}

javascript - 你如何将属性发送到 svg 中的 javascript 函数

perl - 从 perl 使用 Inkscape shell

html - 嵌入PDF会随机不显示

python - Django 部署。加载 MySQLdb 模块时出错。从/tmp 目录读取/写入时出现问题

python - Django 日志记录在 apache 中不起作用。?

svg - 资源被解释为图像但在 xampp 中使用 MIME 类型 text/xml 传输?

javascript - Firefox 图像性能

linux - bash 脚本从浏览器打开 firefox 浏览器