Laravel 5.7.10 (Spatie) Менеджер тегов Google отклонен CSP - PullRequest
0 голосов
/ 20 ноября 2018

Спустя пять часов отладки, вот и я!

Это мое первое приложение, в котором я использовал протоколы CSP в заголовке, и по какой-то причине браузер отказывается правильно подбирать мои протоколы- возможно, я неправильно их настраиваю.

Службы рекламы Google продолжают возвращать эту ошибку,

Отказался загружать сценарий 'http://www.googleadservices.com/pagead/conversion_async.js', поскольку он нарушает следующую безопасность содержимогоДиректива политики: "script-src 'self' * .bootstrapcdn.com fonts.googleapis.com * .google-analytics.com * .googletagmanager.com platform.twitter.com * .twimg.com * .ads-twitter.com".

Как и в случае с gtm.js

Отказ от выполнения встроенного сценария, поскольку он нарушает следующую директиву политики безопасности содержимого: "script-src 'self' *.bootstrapcdn.com fonts.googleapis.com * .google-analytics.com * .googletagmanager.com platform.twitter.com * .twimg.com * .ads-twitter.com ".Для включения встроенного выполнения требуется ключевое слово unsafe-inline, хеш (sha-keyxyz) или одноразовый номер (nonce -... ').

I'mпередавая его через Spatie в файле Basic.php, как это

protected function addDirectivesForGoogleTagManager(): self
{
    return $this->addDirective(Directive::SCRIPT, ['*.googletagmanager.com'])
    ->addDirective(Directive::IMG, '*.googletagmanager.com');
}

Какой configure () возвращает это

$this
->addNonceForDirective(Directive::STYLE)
->addNonceForDirective(Directive::SCRIPT)
//..all the self tags etc
->addDirectivesForGoogleTagManager()
//..etc, rest of the tags work fine

Я добавил Nonces к самим вызовам скрипта,пробовал писать в тегах unsafe-inline, но по какой-то причине не могу заставить это работать.Какие-то конкретные вещи бросают вызов?Вот попытка nonce

<script src="{!! asset('js/googletag.js') !!}" nonce="{{ csp_nonce() }}"></script>

Основными причинами этой ошибки являются анонимные функции - что-то, что я уже ненавижу, но что угодно.

...