Размещение рекламы на сайтах с CSP

Чтобы начать показывать рекламу на вашем сайте, разместите код рекламного блока внутри HTML-кода страниц сайта. На сайтах, которые используют технологию Content Security Policy, такой код будет исполняться, только если предприняты специальные действия. А именно, необходимо передавать браузеру в HTTP-заголовке разрешение на обработку данных: показ рекламы, загрузка изображений, использование стилей.
Без использования атрибута nonce
Content-Security-Policy: default-src 'none'; frame-src *.gnezdo.ru, *.2xclick.ru, *.gewfwdgd.site; img-src *; media-src *.gnezdo.ru, *.2xclick.ru, *.gewfwdgd.site; script-src 'unsafe-inline' 'unsafe-eval' *.gnezdo.ru, *.2xclick.ru, *.gewfwdgd.site; style-src 'unsafe-inline' 'unsafe-eval' *.gnezdo.ru, *.2xclick.ru, *.gewfwdgd.site; font-src 'self' *.gnezdo.ru, *.2xclick.ru, *.gewfwdgd.site;
С использованием атрибута nonce
- В HTTP-заголовок в директивы script-src и style-src необходимо добавить атрибут nonce. Этот атрибут должен содержать строковое значение в виде случайной последовательности символов из латинских букв и цифр. Это значение должно быть сформировано на сервере случайным образом отдельно при каждом запросе.
Content-Security-Policy: script-src 'nonce-<последовательность символов>'; style-src 'nonce-<последовательность символов>'
- Дополните HTTP-заголовок следующим кодом:
Content-Security-Policy: default-src 'none'; frame-src *.gnezdo.ru, *.2xclick.ru, *.gewfwdgd.site; img-src *; media-src *.gnezdo.ru, *.2xclick.ru, *.gewfwdgd.site; script-src 'nonce-<последовательность символов>' 'unsafe-inline' 'unsafe-eval' *.gnezdo.ru, *.2xclick.ru, *.gewfwdgd.site; style-src 'nonce-<последовательность символов>' 'unsafe-inline' 'unsafe-eval' *.gnezdo.ru, *.2xclick.ru, *.gewfwdgd.site; font-src 'self' *.gnezdo.ru, *.2xclick.ru, *.gewfwdgd.site;
В код каждого рекламного блока Рекламной сети Gnezdo на страницах сайта передайте значение атрибута nonce, сформированное на первом шаге.
<script nonce="<последовательность символов>" src='https://news.gewfwdgd.site/loader.min.js' async></script>
<div id='containerId341305'></div>
<script nonce="<последовательность символов>">
(function(w, d, c, s, t){
w[c] = w[c] || [];
w[c].push(function(){
gnezdo.create({
tizerId: 341305,
containerId: 'containerId341305',
noframe: 1
});
});
})(window, document, 'gnezdoAsyncCallbacks');
</script>


