Где можно настроить Content-Security-Policy?

Для клиентов я внедряю Facebook Pixel на их веб-сайте, чтобы позволить им собирать маркетинговую статистику. Пиксель Facebook реализован с помощью следующего Javascript, в <head> тег:

<script>
!function(f,b,e,v,n,t,s)
{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(t,s)}(window,
document,'script',
'https://connect.facebook.net/en_US/fbevents.js');
fbq('init', '*****************');
fbq('track', 'PageView');
</script>
<noscript>
<img height="1" width="1" src="https://www.facebook.com/tr?id=***************&ev=PageView&noscript=1" />
</noscript>

Как видите, скрипт вызывает файл Javascript на connect.facebook.net домен. Когда код загружен на рабочий сервер, я получаю следующую ошибку в консоли Chrome из-за нарушения Content-Security-Policy директива:

Refused to load the script 'https://connect.facebook.net/en_US/fbevents.js' because it violates the following Content Security Policy directive: "script-src 'self' 'unsafe-inline' 'unsafe-eval' platform.twitter.com s3.amazonaws.com cdn.ckeditor.com cdn.syndication.twimg.com www.google-analytics.com ajax.googleapis.com player.vimeo.com".

Я прошел исходный код для сайта (который построен на PHP), и Content-Security-Policy директива нигде не настроена. И не в .htaccess файл. Хотя я не совсем уверен, если это Можно быть сделано в .htaccess файл.

Редактировать: (добавлено изображение заголовков ответов)
Заголовки ответа

Как видно из сообщения об ошибке, а также на скриншоте выше, является Content-Security-Policy где-то определена директива, и мне нужно ее найти, чтобы я мог внести туда белый список домена Facebook. Я думаю, это могло быть сделано на уровне сервера в httpd.conf, файл, к которому у меня нет доступа, так как сайт размещен на внешнем хостинг-провайдере.

Итак, мой вопрос: куда может ли Content-Security-Policy Директива должна быть настроена, если не в коде PHP, HTML <meta http-equiv> атрибут или в httpd.conf файл? Можно ли это сделать еще где?

0

Решение

Насколько я знаю, это единственные места, где может быть установлена ​​Политика безопасности контента:

  1. Мета-теги (в вашем примере это не так, поскольку это заголовок)
  2. Конфигурация Apache, ether apache2.conf / httpd.conf или один из файлов vhost / config, которые объединяются в основной файл. Проверьте доступные сайты, если можете
  3. .htaccess, который, как я предполагаю, имеет место, если вы не можете получить доступ к конфигурации apache напрямую.
  4. РНР Заголовок () функция, если заголовки создаются вручную.
0

Другие решения

Других решений пока нет …