CSP блок гугл переводчик - PullRequest
       14

CSP блок гугл переводчик

0 голосов
/ 01 апреля 2019

Я использую плагин для перевода сайта Wordpress с помощью Google translate.Я установил политику безопасности контента для сайта, и это приведет к тому, что плагин Wordpress не сможет перевести сайт, потому что CSP заблокирует его.Есть ли способ включить функции Google Translate, когда CSP установлен на веб-сайте?У меня была та же проблема с картами Google, и я решил ее, добавив адрес google.com в CSP, но с переводом я не знаю, как продолжить.

Настройки CSP:

<?php 
header("Content-Security-Policy: default-src 'self'; script-src 'self' 'unsafe-inline' https://www.google.com; img-src 'self' data:; style-src 'self' 'unsafe-inline' https://www.google.com; font-src 'self' data:; object-src 'none'; frame-src https://www.google.com; ");
?>

(индекс): 1 Отказался от загрузки сценария 'https://translate.google.com/translate_a/element.js?cb=GoogleLanguageTranslatorInit', поскольку он нарушает следующую директиву политики безопасности содержимого: "script-src' self '' unsafe-inline 'https://www.google.com https://translate.googleapis.com/". Обратите внимание, что 'script-src-elem' не был задан явно, поэтому 'script-src' используется как запасной вариант.

1 Ответ

1 голос
/ 02 апреля 2019

Вам нужно добавить каждый домен, который вы хотите разрешить, к заголовку CSP:

попробуйте:

<?php 
    header("Content-Security-Policy: default-src 'self'; script-src 'self' 'unsafe-inline' https://www.google.com https://translate.google.com; img-src 'self' data:; style-src 'self' 'unsafe-inline' https://www.google.com; font-src 'self' data:; object-src 'none'; frame-src https://www.google.com; ");
?>

ПРИМЕЧАНИЕ что, как только сценарий будет разрешен, CSP, возможно, заблокирует другие типыресурс из того же домена (например, CSS, iframe), если это так, просто добавьте этот домен к этим типам.

...