Security 未识别内容安全策略报告uri

Security 未识别内容安全策略报告uri,security,parsing,http-headers,content-security-policy,Security,Parsing,Http Headers,Content Security Policy,我正在以仅报告模式设置内容安全策略。当我测试它时,Google Chrome给出了以下错误: 内容安全策略“默认src”self;脚本src“self”“unsafe inline”https://use.typekit.com;font src https://use.typekit.com;样式src“self”“unsafe inline”https://use.typekit.com;frame src https://www.youtube.com;'以仅报告模式交付,但未指定“报告u

我正在以仅报告模式设置内容安全策略。当我测试它时,Google Chrome给出了以下错误:

内容安全策略“默认src”self;脚本src“self”“unsafe inline”https://use.typekit.com;font src https://use.typekit.com;样式src“self”“unsafe inline”https://use.typekit.com;frame src https://www.youtube.com;'以仅报告模式交付,但未指定“报告uri”;该策略将无效。请添加“report uri”指令,或通过“Content Security policy”标题交付该策略

这是我的完整内容安全策略,我在网站的头PHP文件中定义HTTP头:

header("Content-Security-Policy-Report-Only: default-src 'self'; 
        script-src 'self' 'unsafe-inline' https://use.typekit.com https://js.hs-analytics.net https://google-analytics.com https://ajax.googleapis.com;
        font-src https://use.typekit.com;
        style-src 'self' 'unsafe-inline' https://use.typekit.com;
        frame-src https://www.youtube.com;
        report-uri /csp-violations-report-endpoint;
");
我在web根目录中有一个文件夹:csp违规报告端点,其中有一个index.php文件来处理违规行为

我不确定我做错了什么。我已经阅读并习惯于编写我的报告uri指令

我是否应该尝试将
报告uri
指向根目录中的脚本?我应该让它自己登录,还是需要一个解析器来处理它?我的剧本可能有问题吗?(如果有帮助的话,我可以将其包括在内)


编辑:可能是我的web浏览器忽略了
报告uri
指令(因为它已被弃用),并期望
报告执行
指令,这就是为什么它不起作用,但错误消息让我相信情况并非如此。

我可能完全不正确,但是,如果您使用的代码完全如上图所示,那么您可能发送了一堆无效的头。HTTP头必须存在于一行上,而您的头不存在。试试这个:

header(
    "Content-Security-Policy-Report-Only: default-src 'self'; " .
    "script-src 'self' 'unsafe-inline' https://use.typekit.com https://js.hs-analytics.net https://google-analytics.com https://ajax.googleapis.com; " .
    "font-src https://use.typekit.com; " .
    "style-src 'self' 'unsafe-inline' https://use.typekit.com; " .
    "frame-src https://www.youtube.com; " .
    "report-uri /csp-violations-report-endpoint; "
);

就这样。我把它改成了一个连接的字符串,标题现在可以工作了。耶!