运行 CSP 时外部链接不起作用

External links doesn't work when running CSP

我遇到了一个奇怪的问题。如果我不启用我的 CSP 配置,没问题,一切正常。但是当我激活 CSP 时,内部链接正常工作,但外部链接不正常。在我的网站上,(例如这里 https://www.matosmaison.fr/avis/perceuses-visseuses/ryobi-rpd1200k)我有指向 amazon、zanox 和其他类似网站的链接。使用 CSP 时这些链接不起作用。

我在这个配置中的错误是什么?

"csp": {
"defaultSrc": [
  "'self'",
  "www.matosmaison.fr",
  "cdn.matosmaison.fr",
  "www.google-analytics.com",
  "images-na.ssl-images-amazon.com",
  "youtube.com",
  "www.youtube.com",
  "googleads.g.doubleclick.net"
],
"scriptSrc": [
  "'self'",
  "www.matosmaison.fr",
  "cdn.matosmaison.fr",
  "www.google-analytics.com",
  "images-na.ssl-images-amazon.com",
  "youtube.com",
  "www.youtube.com",
  "googleads.g.doubleclick.net"
],
"styleSrc": [
  "'self'",
  "www.matosmaison.fr",
  "cdn.matosmaison.fr",
  "www.google-analytics.com",
  "images-na.ssl-images-amazon.com",
  "youtube.com",
  "www.youtube.com",
  "googleads.g.doubleclick.net",
  "'unsafe-inline'"
],
"fontSrc": [
  "'self'",
  "www.matosmaison.fr",
  "cdn.matosmaison.fr",
  "www.google-analytics.com",
  "images-na.ssl-images-amazon.com",
  "youtube.com",
  "www.youtube.com",
  "googleads.g.doubleclick.net",
  "'unsafe-inline'"
],
"imgSrc": [
  "'self'",
  "www.matosmaison.fr",
  "cdn.matosmaison.fr",
  "www.google-analytics.com",
  "images-na.ssl-images-amazon.com",
  "youtube.com",
  "www.youtube.com",
  "googleads.g.doubleclick.net",
  "data:"
],
"sandbox": ["allow-forms", "allow-scripts", "allow-same-origin", "allow-top-navigation"],
"reportUri": "/report-violation",
"objectSrc": []

}

我试过添加 amazon、zanox 和其他的但没有改变,它不起作用。

提前致谢!

好的,我找到了解决方案。打开一个新的“_blank”选项卡被视为打开一个弹出窗口。所以在沙盒模式下,你可以有这个消息

已阻止在新 window 中打开“[您的 link]”,因为该请求是在未设置 'allow-popups' 权限的沙盒框架中发出的。

您可以使用简单的 JS 命令重现:

window.open('[your link]', '_blank')

要修复它,您需要添加此部分:

"sandbox": ["allow-popups"]

或者用值"allow-popups"完成沙盒部分。