Отладочное сообщение “Ресурс, интерпретируемый как другой, но переданный с помощью MIME-типа application / javascript”
-
19-08-2019 - |
Вопрос
Хорошо, я понимаю, что за сообщения означает, но я действительно не уверен, что является причиной этого.Кстати, я использую Safari и Web Inspector в Mac OS X.
У меня есть следующее в моем документе head:
<script src="http://local.url/a/js/jquery.js" type="text/javascript"></script>
<script src="http://local.url/a/js/jquery.inplace.js" type="text/javascript"></script>
jquery.js
обрабатывается нормально, но другой файл вызывает предупреждение.Также кажется, что javascript в этом файле никогда не выполняется.
Файл передается через mod_deflate
, таким образом, он закодирован в формате gzip, но то же самое относится и к другому файлу.
У кого-нибудь есть какие-либо идеи, что является причиной этого или как это устранить?
Приветствую всех, Боже.
Решение
похоже, это ошибка в safari / webkit.может быть этот, или любой из этих.попробуйте обновить свой safari.если более поздней стабильной версии нет, попробуйте бета-версию 4.
Другие советы
Изображение с пустым атрибутом "src" генерирует эту ошибку в Windows-Chrome:
<img src="">
...принимая во внимание ...
<img>
...не делает этого.
Я прибыл сюда, потому что мой результирующий набор ajax возвращал данные "src", которые были пустыми, но img все еще вставлялся на страницу.
Решено!
У меня была эта ошибка в течение нескольких дней.Это сводило меня с ума, потому что не позволяло мне использовать отладчик скриптов firefox firebug.Наконец, моя ошибка была устранена, когда я удалил пустой URL-адрес в "фоновом изображении:url()" свойство стиля.
Это было так больно, что я действительно надеюсь, что кто-нибудь сможет воспользоваться этим советом.
Я не думаю, что это ошибка, Попробуйте добавить тип MIME в свой файл .htaccess Например, поместите или добавьте следующее содержимое в ваш файл .htaccess (который должен находиться в том же месте, что и ваши папки .js или выше)
#JavaScript
AddType application/x-javascript .js
Это решило проблему с ресурсом " мое дерево " , интерпретируемым как " другое " , но переданным ..." предупреждения.Каждый раз, когда у вас появляется подобное предупреждение, это означает, что у вас недостаточно информации в вашем файле .htaccess.
КСТАТИ , 1:Поскольку вы изменяете файл .htaccess, обязательно перезагрузите свой сервер.
КСТАТИ , 2:Я также мог бы очистить те же предупреждения для GIF-файлов в Safari 4 с помощью этого:
#GIF
AddType image/gif .gif
КСТАТИ , 3:Для других типов файлов:видишь список школ w3schools или htaccess-руководство
Это предупреждение появляется из-за того, что тип сценария по умолчанию не указан.Попробуйте добавить следующую директиву в ваш HTML-файл:
<meta http-equiv="content-script-type" content="text/javascript">
Вы можете прочитать больше о спецификациях сценариев по умолчанию здесь:http://www.w3.org/TR/REC-html40/interact/scripts.html#h-18.2.2.1
Вам нужно использовать инструмент для просмотра HTTP-заголовков, отправленных вместе с файлом, что-то вроде LiveHTTPHeaders ( Лайфхакеры ) или HttpFox это то, чем я пользуюсь.Если файлы отправляются с веб-сервера без типа MIME или с типом MIME по умолчанию, таким как text / plain, это может быть причиной данной ошибки.
Это из-за точки в имени файла.Это глупо, но каждый раз, когда в имени файла js есть точка, вы будете получать эту ошибку, и я сталкивался с ситуациями, когда это фактически препятствовало загрузке файла js.
Похоже, это ошибка в политиках обработки кэша Safari.
Обходной путь в apache:
Header unset ETag
Header unset Last-Modified
Я только что получил это и решил локально на своем Mac.По какой-то причине файл javascript, о котором идет речь, имел неправильные разрешения.Я заметил, когда я посмотрел на это в firebug, я получал 403.Я надеюсь, что это кому-нибудь поможет.
У меня была такая же проблема с css-файлом вместо javascript.(используя веб-сервер xitami)
что исправлено для меня, так это добавление в раздел MIME xitami.cfg:
css=текст/css
Я обнаружил, что именование моих css-файлов противоречило фильтрам прокси
www.dating.com (который не является моим сайтом) был заблокирован, а мои файлы css и js назывались dating.css и dating.js.Фильтр блокировал это.Возможно, так обстоит дело с некоторыми из вас, работающими над корпоративными системами.
Другой распространенной причиной этой ошибки на Mac является флаг карантина Apple.
ls
каталог, содержащий ресурс (ы), о котором идет речь.Если вы видите индикатор расширенного атрибута, т.е. @
символ в конце блока разрешений (например, -rw-r--r--@
) затем файл можно было бы поместить в карантин.
Попробуй ls -la@e
и искать com.apple.quarantine
Следующая команда удалит карантин:
xattr -d com.apple.quarantine /path/to/file
Кажется, есть много причин, которые вызывают это.Для меня это было правило перезаписи в нижнем регистре в IIS.Изменил проблемные файлы (js и png) на строчные, и проблема исчезла.
На APACHE
Добавьте эти типы MIME в файл .htaccess в вашем корневом каталоге.Я рекомендую вторую строку, так как это может помочь предотвратить любые будущие потенциальные предупреждения об интерпретации MIME с файлами CSS.
AddType application/x-javascript .js
AddType text/css .css
Перезапустите ваш Apache...
На NGINX
Добавьте в свой nginx.conf или файл импорта mime.types (рекомендуемый метод).Добавьте любой или все по мере необходимости / актуальности.
types {
text/html html htm shtml;
text/css css;
text/xml xml;
image/gif gif;
image/jpeg jpeg jpg;
application/x-javascript js;
application/rss+xml rss;
text/plain txt;
image/png png;
image/tiff tif tiff;
image/svg+xml svg svgz;
image/webp webp;
application/postscript ps eps ai;
application/pdf pdf;
application/rtf rtf;
application/vnd.ms-excel xls;
application/vnd.ms-powerpoint ppt;
application/msword doc;
application/x-shockwave-flash swf;
application/xhtml+xml xhtml;
application/zip zip;
}