Ресурс заблокирован из-за несоответствия типа MIME (X-Content-Type-Options: nosniff)

Я разрабатываю веб-страницу, используя JavaScript и HTML, все работало хорошо, когда я получил этот список ошибок от моей HTML-страницы:

The resource from “https://raw.githubusercontent.com/dataarts/dat.gui/master/build/dat.gui.min.js”
  was blocked due to MIME type mismatch (X-Content-Type-Options: nosniff).
The resource from “https://raw.githubusercontent.com/mrdoob/three.js/dev/build/three.js” was
  blocked due to MIME type mismatch (X-Content-Type-Options: nosniff).
The resource from “https://raw.githubusercontent.com/mrdoob/three.js/master/examples/js/renderers/CanvasRenderer.js”
  was blocked due to MIME type mismatch (X-Content-Type-Options: nosniff).
The resource from “https://raw.githubusercontent.com/mrdoob/three.js/master/examples/js/renderers/Projector.js”
  was blocked due to MIME type mismatch (X-Content-Type-Options: nosniff).
The resource from “https://raw.githubusercontent.com/mrdoob/three.js/dev/build/three.js” was
  blocked due to MIME type mismatch (X-Content-Type-Options: nosniff).

Эти ошибки появились после автоматического обновления браузера (Mozilla Firefox), возможно возможно, что-то было изменено в настройках. Знаете ли вы какой-нибудь способ решить эту проблему?

Комментарии к вопросу (1)

Проверьте, правилен ли путь к файлу и существует ли файл - в моем случае проблема была именно в этом - как только я исправил ее, ошибка исчезла

Комментарии (2)

Это можно исправить, изменив URL, пример плохой:

https://raw.githubusercontent.com/svnpenn/bm/master/yt-dl/yt-dl.js
Content-Type: text/plain; charset=utf-8

Пример хороший:

https://cdn.rawgit.com/svnpenn/bm/master/yt-dl/yt-dl.js
content-type: application/javascript;charset=utf-8

rawgit.com - это кэширующий прокси-сервис для github. Вы также можете зайти туда и интерактивно получить соответствующий URL для вашего оригинального URL raw.githubusercontent.com. См. его FAQ

Комментарии (3)

проверить ваш путь ,эту ошибку, если файл не существует на данном пути.

Комментарии (0)

Мы столкнулись эту ошибку в производство после нашей группы DevOps изменили конфигурацию веб-сервера путем добавления х-тип контента-варианты: nosniff. Теперь, благодаря этому, браузер был вынужден интерпретировать ресурсов, как было отмечено в контент-тип параметра` заголовков ответа.

Теперь, с самого начала, наши сервера приложений была явная установка контент-тип JS файлы как текст/равнина. Так, Икс-контент-тип-функции: nosniff не был установлен в веб-сервер, браузер автоматически интерпретации JS файлы как файлы JavaScript, хотя содержание-тип упоминается как текст/равнина. Это называется пробная проверка MIME. Теперь, после установки х-тип контента-варианты: nosniff, браузер был вынужден не пробная проверка MIME и брать на содержание-типа Как упоминалось в заголовках ответа. Благодаря этому, он сделал интерпретировать JS файлы как обычные текстовые файлы и запрещено выполнять их или блокировали их. То же самое показали на ваши ошибки.

Решение: сделать свой сервер установить контент-тип JS файлов, как

application/javascript;charset=utf-8

Таким образом, он будет нормально загрузить все файлы, JS и вопрос будет решен.

Комментарии (4)

В моем случае я просто пропустил Слэш-то "/" и после get_template_directory_uri() результатом / и пусть она ошибалась: <БР><БР> Мой неправильный код :

wp_enqueue_script( 'retina-js', get_template_directory_uri().'js/retina.min.js' ); 

Мой Исправленный Код :

wp_enqueue_script( 'retina-js', get_template_directory_uri().'/js/retina.min.js' );
Комментарии (0)

Это может быть связано с тем, что браузер не может получить доступ к файлу. Я столкнулся с подобной ошибкой при создании приложения на node.js. Вы можете попробовать напрямую запросить файл скрипта (копируя и вставляя url) и посмотреть, сможете ли вы его получить. Тогда вы сможете понять, в чем на самом деле проблема. Это может быть связано с разрешением папки, в которой находится файл, или браузер просто не может найти его из-за неправильного пути к нему. В node.js, после указания маршрута к файлу, все работает.

Комментарии (1)

Используете ли вы выразить?

Проверьте свой путь(обратите внимание на "в/в" после /общественных/):

app.use(express.static(__dirname + "/public/"));

//Примечание: вам не нужно в "/" и до "и в CSS и" потому что его уже указанной выше:

rel="stylesheet" href="css/style.css

Надеюсь, что это помогает

Комментарии (0)

Я'вэ решил эту проблему, изменив кодировку в JS-файлов из UTF-8 без BOM в простой кодировке UTF-8 в Notepad++

Комментарии (0)

Это может быть неверный путь. Убедитесь, в основной файл приложения у вас есть:

app.use(express.static(path.join(__dirname,"public")));

Например ссылку на ваш CSS как:

похожие на ссылка на файлы JS:

<script src="/js/clean-blog.min.js"></script>
Комментарии (0)

См. по протоколам HTTPS и HTTP

Иногда, если вы используете смешанное протоколов [это происходит в основном с JSONP обратного вызова ] вы можете в конечном итоге в эту ошибку.

Убедитесь, что веб-страницы и страничный ресурс имеют одинаковые протоколы HTTP.

Комментарии (0)