У меня есть статичный c веб-сайт, размещенный в хранилище Google, которое я обслуживаю через платформу Google.
Этот сайт работает без проблем около 6 месяцев, но в течение последнего В течение месяца у меня периодически возникали проблемы с загрузкой таблиц стилей и скриптов из-за проблем «безопасности контента» - в результате только текст главной страницы отображается в браузере без стилей и без (Javascript) функций. Под прерывистым я подразумеваю, что он работает нормально в течение нескольких часов, а затем не работает в течение нескольких часов.
Для этой службы нет «веб-сервера», так как я просто обслуживаю данные c страницы из корзины - я понимаю, что Google должен иметь свой собственный сервер, который обрабатывает это, хотя. Сбои происходят независимо от того, какой браузер использует пользователь, и очистка кэша браузера не помогает, поэтому эта проблема находится на стороне сервера Google.
Проверка консоли разработчика в браузере Я вижу следующие проблемы для всех таблиц стилей, сценариев и шрифтов, которые использует веб-страница:
> Refused to load the stylesheet XXXXXXX because it violates the
> following Content Security Policy directive: "default-src 'none'".
> Note that 'style-src-elem' was not explicitly set, so 'default-src' is
> used as a fallback.
Я думаю, что я правильно настроили мои настройки безопасности контента:
<meta http-equiv="Content-Security-Policy" content="
default-src 'self';
img-src 'self'
https://syndication.twitter.com;
font-src 'self'
https://use.fontawesome.com
https://fonts.gstatic.com
https://fonts.googleapis.com;
script-src 'self' 'unsafe-inline'
https://stackpath.bootstrapcdn.com
https://connect.facebook.net
https://platform.twitter.com
https://code.jquery.com
https://cdnjs.cloudflare.com;
style-src 'self' 'unsafe-inline'
https://stackpath.bootstrapcdn.com
https://use.fontawesome.com
https://fonts.googleapis.com;
frame-src 'self'
https://www.facebook.com
https://connect.facebook.net
https://platform.twitter.com
https://www.youtube.com;
">
Это ссылки, которые не работают, каждая «внешняя» включает подпись с импортом, чтобы гарантировать, что «настоящая» вещь загружена.
<!-- Bootstrap core CSS -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
<!-- Font Awesome -->
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.2.0/css/all.css" integrity="sha384-hWVjflwFxL6sNzntih27bfxkr27PmbbK/iSvJ+a4+0owXq79v+lsFkW54bOGbiDQ" crossorigin="anonymous">
<!-- Custom fonts for this template -->
<link href='https://fonts.googleapis.com/css?family=Titillium+Web' rel='stylesheet' type='text/css'>
<link href='https://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800' rel='stylesheet' type='text/css'>
Может кто-нибудь увидеть, что я делаю неправильно, или предложить какой-нибудь совет о том, как заставить это работать последовательно?