无法通过PHP修改内容安全策略标头

问题描述 投票:2回答:1

我有一段时间没有这个问题,但它现在才成为一个真正的问题。

几年前我实施了内容安全策略。我使用PHP来设置标题。这是我的标题。

Content-Security-Policy:default-src'self'www.googleadservices.com ssl.google-analytics.com www.google-analytics.com googleads.g.doubleclick.net

这非常有效。但是,如果我以任何方式更改它,发送的标头仍然是相同的。即使我删除了服务器仍然发送的代码。

我认为浏览器可以缓存这个但新鲜的浏览器和在线标题检查器一样。我认为Web服务器可能会缓存这个,但对其他头指令的修改工作正常。

我在Windows Web Server 2008上使用IIS7.5和PHP 5.6.31 NTS。

这是一个奇怪的问题,Google和SO搜索都没有出现任何问题。

代码:旧代码:

header("Content-Security-Policy: default-src 'self' www.googleadservices.com 
ssl.google-analytics.com  www.google-analytics.com googleads.g.doubleclick.net
");

新守则:

header("Content-Security-Policy: default-src 'self' www.googleadservices.com 
ssl.google-analytics.com www.google-analytics.com googleads.g.doubleclick.net sealserver.trustwave.com; 
style-src 'self' fonts.googleapis.com; object-src 'none';
");

结果标题无论如何。

Content-Security-Policy: default-src 'self'  www.googleadservices.com 
ssl.google-analytics.com www.google-analytics.com 
googleads.g.doubleclick.net

任何提示将不胜感激。

php http security iis-7.5
1个回答
0
投票

我使用PHP来设置标题。 (...)但是,如果我以任何方式更改它,发送的标题仍然是相同的。即使我删除了服务器仍然发送的代码。

我最好猜测为什么要发送旧标头:代码在一个奇怪的地方做了一些意想不到的事情。我会为header()的任何实例grep整个源代码并从那里开始。

对于长期,易于维护的解决方案,您可能会发现CSP-Builder比手动编写更容易。

© www.soinside.com 2019 - 2024. All rights reserved.