你有3个问题:
控制台的错误你不CSP相关。 "403禁止"意味着你没有访问相关网址。 "'X框架的选项',以'否认'"意味着你尝试嵌入框架,但这一页不允许埋通过 X-Frame-Options: "DENY"
HTTP头。
错误的格式的服务 add_header
. 它应该看起来像(注意报价- always
关键字应放出来的CSP设置):
add_header Content-Security-Policy "default-src 'self'..." always;
错误的 格式CSP的主机的来源。 主机的来源喜欢 .youtube.com
必须不包含一个领先 .
点:
youtube.com
将允许负载资源从 http(s)://youtube.com 和 *.youtube.com
将允许资源从子 youtube.com.
所以你的语法正确CSP应该看起来像:
add_header Content-Security-Policy "\
default-src 'self' 'unsafe-inline' https://stackpath.bootstrapcdn.com\
https://fonts.googleapis.com infobip.com ws://infobip.com wss://infobip.com youtube.com\
https://cdn.jsdelivr.net http://www.w3.org;\
connect-src 'self' infobip.com wss://infobip.com ws://*.infobip.com\
wss://livechat-fr.infobip.com/chat/web/proxy/ https://doubleclick.net;\
img-src 'self' data: https://openstreetmap.org;\
" always;
注意:
- 鞋://在线咨询-fr。infobip.com/聊天室/web/代理/492/hybzmnjl/websocket -不包括大胆的路径的一部分,以CSP,因为它改变了每个时间。
- 该方案的资源喜欢
wss:
涵盖了任何主机的来源与方案(例如 鞋://网站。com/websocket). 因此,我删除了方案资源和离开宿主的来源。
- 我删除一些不支持的来源,例如
'unsafe-inline'
在 connect-src
.
- 服务应该支持反斜杠
\
作为线突破了,所以我使用它,因为它很难保持CSP在一个线上。 检查你的服务器版本支持这一特征。
注2: 这CSP可以阻止一些消息来源-只是把它们添加到适当的指令。
注3: 考虑移动源自 default-src
指令 script-src
+ style-src
+ font-src
指令。 因为现在你实际上允许 'unsafe-inline'
在 scrit-src
所以你CSP不保护对XSS. 它也将难以管理CSP在未来,由于资源被混合在一个指令。