Javascript 在PHP网站中添加嵌入式Youtube视频会在控制台中出错

Javascript 在PHP网站中添加嵌入式Youtube视频会在控制台中出错,javascript,php,html,embed,content-security-policy,Javascript,Php,Html,Embed,Content Security Policy,请帮忙 我试图在我的网站中添加一个嵌入式youtube视频,但由于以下错误,加载失败。如何在一个文件中修改CSP头(覆盖),而不修改默认CSP。我只想修改这个PHP文件 <iframe width="420" height="315" src="https://www.youtube.com/embed/tgbNymZ7vqY"> </iframe> Refused to frame 'https://www

请帮忙

我试图在我的网站中添加一个嵌入式youtube视频,但由于以下错误,加载失败。如何在一个文件中修改CSP头(覆盖),而不修改默认CSP。我只想修改这个PHP文件

<iframe width="420" height="315"
src="https://www.youtube.com/embed/tgbNymZ7vqY">
</iframe>


Refused to frame 'https://www.youtube.com/' because it violates the following Content Security Policy directive: "default-src 'self'". Note that 'frame-src' was not explicitly set, so 'default-src' is used as a fallback.

拒绝诬陷https://www.youtube.com/'因为它违反了以下内容安全策略指令:“default src'self'”。请注意,没有显式设置“frame src”,因此使用“default src”作为回退。

这取决于您发布CSP的方式

  • 如果您通过
    header()
    PHP函数发布CSP,您可以编写一些逻辑,在哪里发布哪个头

  • 如果你为CMS使用一些插件,你会受到这些插件设施的限制

  • 如果您是通过
    .htaccess
    文件或web配置完成的,那么就没有简单的方法来覆盖这样的CSP头。即使在不需要的403/404/502/301/302页上也会发布。
    尽管如此,您仍然可以使用construct(
    SpecialFileName.php
    是从公共CSP中排除的文件名):



头未设置内容安全策略
#以前的CSP头
标题集内容安全策略“默认src‘self’;框架src www.youtube.com;”


或通过使用:


标题集内容安全策略“默认src‘self’;框架src www.youtube.com;”
标题集内容安全策略“默认src‘self’;”

*
注意:

< IfModule mod_headers.c>
  <If "%{REQUEST_FILENAME} ^.*/SpecialFileName\.php$">
    Header set Content-Security-Policy "default-src 'self'; frame-src www.youtube.com;"
  </If>
  <Else>
    Header set Content-Security-Policy "default-src 'self';"
  </Else>
< /IfModule>