web-dev-qa-db-fra.com

Message de débogage "Ressource interprétée comme autre mais transférée avec le type application MIME/javascript"

OK, je comprends ce que les messages signifient , mais je ne suis vraiment pas sûr de ce qui le cause. J'utilise Safari et Web Inspector sur Mac OS X, d'ailleurs.

J'ai le texte suivant dans la tête de mon document:

<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 est géré correctement, mais l’autre fichier provoque l’avertissement. Il semble également que le javascript de ce fichier ne soit jamais exécuté.

Le fichier est en cours de traitement via mod_deflate, il est donc codé en gzip, mais l’autre est similaire.

Quelqu'un a-t-il des idées sur la cause de ce problème ou sur la façon de le résoudre?

Salut à tous, Gaz.

64
Gaz

semble être un bug dans safari/webkit. peut-être celui-ci ou aucun de ces éléments . essayez de mettre à niveau votre safari. s'il n'y a pas de version stable plus récente, essayez la version 4 bêta.

9
ax.

Une image avec un attribut "src" vide génère cette erreur sous Windows-Chrome:

<img src="">

... tandis que ...

<img>

... ne fait pas.

Je suis arrivé ici parce que mon résultat ajax renvoyait des données "src" qui étaient vides, mais img était toujours inséré dans la page. 

35
John Mee

Résolu!

J'ai eu cette erreur pendant plusieurs jours. Cela me rendait fou parce que cela ne me permettait pas d’utiliser le débogueur de script de firefox firebug. Enfin, mon erreur a été résolue lorsque j'ai supprimé une url vide dans une propriété de style "background-image: url ()" .

Cela a été tellement pénible que j'espère vraiment que quelqu'un pourra utiliser ce conseil.

13
Alfredo Yong

Je ne pense pas que ce soit un bogue, Essayez d’ajouter le type MIME à votre fichier .htaccess Par exemple, ajoutez ou ajoutez le contenu suivant à votre fichier .htaccess (qui devrait se trouver au même endroit que votre .js ou ci-dessus)

#JavaScript
AddType application/x-javascript .js

Cela a résolu mon arbre "Ressource interprétée comme une autre mais transférée ..." avertissements. Chaque fois que vous recevez ce type d’avertissement, cela signifie que vous n’avez pas assez d’informations dans votre fichier .htaccess. 

BTW1: Puisque vous modifiez le fichier .htaccess, assurez-vous de redémarrer votre serveur.

BTW2: Je pourrais aussi effacer les mêmes avertissements pour les fichiers GIF dans Safari 4 avec ceci:

#GIF
AddType image/gif .gif

BTW3: Pour les autres types de fichiers: voir liste w3schools ou htaccess-guide

10
nacho4d

Cet avertissement apparaît car aucun type de script par défaut n'est spécifié. Essayez d'ajouter la directive suivante à votre fichier HTML:

<meta http-equiv="content-script-type" content="text/javascript">

Vous pouvez en savoir plus sur les spécifications de script par défaut ici: http://www.w3.org/TR/REC-html40/interact/scripts.html#h-18.2.2.1

6
user100144

Vous devez utiliser un outil pour afficher les en-têtes HTTP envoyés avec le fichier, par exemple LiveHTTPHeaders ou HTTPFox sont ceux que j'utilise. Si les fichiers sont envoyés à partir du serveur Web sans type MIME ou avec un type MIME par défaut tel que text/plain, il peut en être de même pour cette erreur.

4
artlung

C'est à cause de la période dans le nom du fichier. C'est stupide, mais à chaque fois qu'il y a un point dans le nom du fichier js, vous obtiendrez cette erreur, et j'ai rencontré des situations où cela empêcherait le chargement du fichier js.

4
Brandon

Cela ressemble à un bogue dans les politiques de gestion du cache de Safari.

Solution de contournement dans Apache:

Header unset ETag
Header unset Last-Modified
3
senz

Je viens de recevoir ceci et je l'ai résolu localement sur mon mac. Pour une raison quelconque, le fichier javascript en question avait de mauvaises autorisations. J'ai remarqué que lorsque je l'ai regardé dans firebug, je recevais un 403. J'espère que cela aidera n'importe qui.

2
m3talsmith

J'ai découvert que la dénomination de mes fichiers CSS était en conflit avec les filtres de proxy

www.dating.com (qui n'est pas mon site) a été bloqué et mes fichiers css et js ont été appelés dating.css et dating.js. Le filtre bloquait cela. C'est peut-être le cas de certains d'entre vous qui travaillent sur des systèmes d'entreprise.

0
vichingo

Il semble y avoir beaucoup de choses qui causent ceci. Pour moi, il s’agissait d’une règle de réécriture minuscule dans IIS. Les fichiers de problème (js et png) ont été modifiés en minuscules et le problème a disparu.

0
UpTheCreek

Sur Apache

Ajoutez ces types MIME à .htaccess dans votre racine. Je recommande la deuxième ligne, car elle peut aider à prévenir de futurs avertissements d'interprétation MIME potentiels avec les fichiers CSS.

AddType application/x-javascript .js
AddType text/css .css    

Redémarrez votre Apache ...

Sur NGINX

Ajoutez à votre fichier nginx.conf ou à votre fichier d'importation mime.types (Méthode recommandée). Ajoutez tout ou partie si nécessaire/pertinent.

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;
}
0
Timothy Perez

J'ai eu le même problème avec un fichier CSS au lieu de javascript. (en utilisant le serveur web xitami)

ce qui a été corrigé pour moi a été ajouté dans la section MIME de xitami.cfg:

css = text/css

0
dnndeveloper

Ce bug semble avoir refait surface (noté novembre 2010)

Je pense que les rapports de bugs WebKit impliqués sont celui-ci et ceci . Cela se résume essentiellement à une gestion incorrecte du cache lors de l'exécution d'un If-Modified-Since qui obtient une réponse 304.

0
Martin Algesten

L'indicateur de quarantaine d'Apple est une autre cause fréquente de cette erreur sur le Mac.

ls le répertoire contenant la ou les ressources en question. Si vous voyez l'indicateur d'attribut étendu, c'est-à-dire le petit symbole @ à la fin du bloc d'autorisations (par exemple -rw-r--r--@), le fichier pourrait être mis en quarantaine.

Essayez ls -la@e et cherchez com.Apple.quarantine 

La commande suivante supprimera la quarantaine:

xattr -d com.Apple.quarantine /path/to/file
0
Zach Harkey