📌  相关文章
📜  magento 2 拒绝加载图像“blob:”,因为它违反了以下内容安全性 (1)

📅  最后修改于: 2023-12-03 15:17:29.610000             🧑  作者: Mango

Magento 2 拒绝加载图像 "blob:",因为它违反了以下内容安全性

在 Magento 2 中,您可能会遇到一个错误,指出某些图像无法加载,错误消息会指出原因是 "拒绝加载图像 "blob:",因为它违反了以下内容安全性"。

原因

出现此错误的原因是因为浏览器的安全策略。浏览器每次发送一个请求时,都会先向服务器请求内容安全策略(CSP)。CSP 是一组规则,用于告诉浏览器应该接受哪些来源的资源。

浏览器会检查请求中的来源和 CSP 中的规则是否匹配。如果请求的资源不在 CSP 中允许的来源列表中,浏览器会拒绝加载资源并显示上述错误消息。

解决方法

要解决此错误,您需要更新 Magento 2 中的内容安全策略。更改 CSP 的最好方法是通过 Magento 的配置文件。

步骤 1:创建文件

首先,您需要在 Magento 2 的根目录中创建一个新的配置文件。该文件应该是 csp_whitelist.xml,在 app/code/Vendor/Module/etc 目录下创建。

<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Csp:etc/csp_whitelist.xsd">
    <policies>
        <policy id="default-src">
            <values>
                <value id="block-blob" type="string">'blob:'</value>
            </values>
        </policy>
    </policies>
</config>
步骤 2:清除缓存

此外,您还需要清空 Magento 2 缓存,以启用新的 CSP。

步骤 3:重新加载页面

重新加载页面,您应该能够成功加载所有的图像和其他资源。

结论

这是一个常见的 Magento 2 错误,通常是由浏览器的 CSP 决定引起的。遵循上述步骤,您应该能够轻松地解决这个问题。