Главная страница » Блог » Почему CSP блокирует загрузку легитимных скриптов?

Почему CSP блокирует загрузку легитимных скриптов?

Почему CSP блокирует загрузку легитимных скриптов? Потому что браузер сверяет каждый скрипт с правилами директивы script-src из заголовка Content-Security-Policy, и если домен источника не указан в списке разрешённых, nonce в теге не совпадает или хеш файла не соответствует значению в политике — загрузка отклоняется, даже если скрипт безопасный. Доверие к коду браузер не оценивает, он действует строго по списку разрешений.

Ищите причину в Chrome DevTools на вкладке Console: там появится сообщение Refused to load script с адресом заблокированного файла и названием нарушенной директивы. Пробегитесь по трём пунктам: домен скрипта добавлен в script-src (или используется ‘self’ для своего поддомена), nonce в атрибуте тега совпадает с nonce в заголовке, и inline-код не подключается без явного разрешения ‘unsafe-inline’. Правки вносятся в серверный конфиг или CDN, а не на странице, и для внешних скриптов используйте именно HTTP-заголовок, а не мета-тег.

Внимание:
Условия: Внедрение системы — от 50 000 ₽/мес. Если бюджет подходит — посмотреть тарифы →
Прокрутить вверх