Ajout de la chaîne de requête à tous .js et .les fichiers css pour empêcher la mise en cache?
En passant par un tutoriel sur la construction d'une application web et il a été recommandé de TOUJOURS ajouter une chaîne de requête "?v=1" à tous .css et .js fichiers pour empêcher la mise en cache.
Est-ce une "meilleure pratique"?
Devrait la chaîne de requête uniquement être utilisés lors de la production-développement?
pourquoi voulez-vous empêcher la mise en cache? ne voulez-vous de rendre votre application plus rapide
Un site de production est le contraire d'un site de développement. Ce que l'on entend par "production-développement"?
Je travaille pour une société et nous développons un site automobile avec le trafic massif. Nous utilisons cloud Amazon S3 pour la mise en cache. Pour un environnement de production, vous voulez qu'il cache surtout si vous avez beaucoup de trafic
Dans la production de votre JS/CSS (et tout le contenu statique) doit être cache-mesure avec un présent-futur en-tête expires. Meilleur pari (et cela nécessite une bonne architecture/design)... c'est d'ajouter le numéro de version du fichier pour le nom de fichier (ou une chaîne de requête (moins pratique)) pour s'assurer que le cache est rompu lorsque le fichier est mis à jour. par exemple,
Réponse plus détaillée peut être trouvée stackoverflow.com/questions/3466989/...
Un site de production est le contraire d'un site de développement. Ce que l'on entend par "production-développement"?
Je travaille pour une société et nous développons un site automobile avec le trafic massif. Nous utilisons cloud Amazon S3 pour la mise en cache. Pour un environnement de production, vous voulez qu'il cache surtout si vous avez beaucoup de trafic
Dans la production de votre JS/CSS (et tout le contenu statique) doit être cache-mesure avec un présent-futur en-tête expires. Meilleur pari (et cela nécessite une bonne architecture/design)... c'est d'ajouter le numéro de version du fichier pour le nom de fichier (ou une chaîne de requête (moins pratique)) pour s'assurer que le cache est rompu lorsque le fichier est mis à jour. par exemple,
<script src="js/somefile_v1843.js"></script>
où "1843" est la version de ce fichierRéponse plus détaillée peut être trouvée stackoverflow.com/questions/3466989/...
OriginalL'auteur Bachalo | 2012-07-06
Vous devez vous connecter pour publier un commentaire.
Je pense que c'est bien, mais comme beaucoup comme la meilleure pratique est concerné, c'est vraiment subjectif.
Le plus populaire, le plus largement utilisé de la CMS utilise cette méthode donc je considère que c'est le chemin à parcourir.
Ce que les gens ne comprennent pas c'est que cette méthode n'est pas la façon la plus simple pour signaler aux navigateurs que ce fichier peut être mise en cache, mais est recached uniquement lorsque les changements de version.
Bref, la réponse à la première question, oui.
Quant à la seconde question "production-développement" est un oxymore. Qui est-il de la production ou de développement?
La réponse à la question, oui. Le développement doit utiliser le contrôle de version pour les mêmes raisons, la production devrait.
OriginalL'auteur iambriansreed
Si vous êtes en train de faire quelque chose côté serveur, il est très facile d'empêcher la mise en cache de vos modifications du fichier:
PHP:
node.js
Ceci ajoute de la modification de la date sur le fichier, ce n'aurez qu'à empêcher la mise en cache lorsque le fichier a été modifié.
C'est ce que le point d'interrogation est pour. Tout, depuis le point d'interrogation à partir de n'est pas une partie du nom de fichier, c'est le requête. Généralement, le serveur va juste l'ignorer.
Désolé, de ne pas le voir. J'ai été pris avec ce que j'ai lu dans le lien et quand je suis tombé sur votre réponse, je écrémé, et s'est senti obligé de le signaler. 😉
OriginalL'auteur Nathan MacInnes