31 votes

sourceMappingURL de jquery génère une erreur 404 dans apache

A la navigation à travers les logs apache et trouvé intéressant:

Lorsqu'un utilisateur l'accès à toute page où j'ai inclus jquery, apache tente d'obtenir jquery-xxx.min.fichier de la carte et a échoué avec l'erreur 404. Voici un exemple:

xxx.xxx.xxx - - [Date:TIME +0000] "GET /js/lib/jquery-1.10.2.min.map HTTP/1.1" 404 3134 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.95 Safari/537.36"

Ce n'est pas une surprise, parce que j'ai clairement ne pas avoir ce min.fichier de carte. Je n'aime pas ce comportement.

À la recherche jquery dans le code source, j'ai trouvé

/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license
//@ sourceMappingURL=jquery-1.10.2.min.map

Première chose, c'est que cette sourceMappingURL est dans le commentaire, et il n'y a pas d'autres coups. Quand j'ai juste enlevé, erreur 404 disparu.

Je n'ai pas de questions que les gens de jquery savaient de quoi ils sont en train de faire, mais quelqu'un peut-il m'expliquer:

  • quel est le point de cette sourceMappingURL qui crée un lien qui se termine avec 404?

  • que suis-je perdre quand j'ai enlevé cette ligne?

La seule chose que j'ai pu trouvé est ce lien et que j'ai compris (merci de droit-moi si je me trompe) que:

  • elle génère des erreurs dans IE (j'ai été en regardant à travers google Chrome)
  • il est déconseillé (je suis en utilisant la dernière version de jQuery au moment de l'être)
  • il est utilisé à des fins de débogage (je n'ai pas compris pour quoi des fins de débogage)

31voto

Ryan Skoblenick Points 306

Il existe plusieurs façons de supprimer l'erreur.

  1. Par défaut, google Chrome source de validation des cartes. Vous pouvez désactiver cette option en ouvrant les Outils de développement et de modifier les paramètres généraux. Décochez la case Activer la source des cartes option. Bien sûr, cela ne sera pas corrigé l'erreur sur Apache.

  2. Modifier vos pages à l'utilisation d'un CDN servi par jQuery ou Google plutôt que d'utiliser une version locale. Ceci empêchera votre local Apache à partir montrant la question dans vos journaux.

  3. Sinon, vous devrez réécrire le commentaire en haut de votre version locale de jquery-1.10-2.min.js pour arrêter cette erreur. Sinon, vous devrez attendre un patch par jQuery.

De:

/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license
//@ sourceMappingURL=jquery-1.10.2.min.map
*/

Pour:

/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license */

sourceMappingURL est une fonctionnalité de HTML5 qui a subi quelques changements au cours des derniers mois.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X