运行 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"完成沙盒部分。
我遇到了一个奇怪的问题。如果我不启用我的 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"完成沙盒部分。