Hostwinds Blog

Résultats de recherche pour:


304 Code d'état: tout ce que vous devez savoir L'image sélectionnée

304 Code d'état: tout ce que vous devez savoir

par:   /  janvier 6, 2024


Quelle est la réponse 304 non modifiée?

Le code d'état HTTP 304 non modifié est un code de redirection indiquant que la ressource demandée n'a pas été modifiée depuis la dernière demande.

En termes simples, le serveur indique au navigateur que la page / ressource qu'il demande n'a pas été mise à jour / modifiée depuis la dernière visite du navigateur.Ainsi, au lieu de repenser et de redémarrer la page / la ressource, qui prend du temps et consomme la bande passante, le navigateur est dit qu'il peut afficher la page / les ressources existantes stockées dans son cache.

Comment fonctionne le code d'état 304?

Pour qu'un serveur réponde avec un code d'état 304, il doit savoir si la ressource stockée dans le cache du navigateur est la même version stockée dans sa base de données.

Voici comment cela fonctionne:

Mise en cache

Lorsqu'un navigateur visite une page Web pour la première fois, il demande des ressources stockées par le serveur Web du site.

Le serveur Web répond à la demande avec un code HTTP 200 OK et envoie les ressources au navigateur.Inclus dans cette réponse, dans l'en-tête HTTP, est un code de hachage ou ETAG (Entity Tag) - un identifiant unique, généralement une série de nombres, qui change chaque fois qu'un site Web / page / ressource est modifié ou mis à jour.

En plus de la mise en cache du contenu de la page Web, le navigateur enregistre également l'heure / date de sa demande.

Demande conditionnelle

En revisitant la même page Web, le navigateur initie une demande HTTP conditionnelle, indiquant au serveur Web que dans certaines conditions, il en sortait les ressources de la page Web à partir de la base de données du serveur et l'envoyez pour le navigateur à télécharger.

Il existe deux en-têtes HTTP de base utilisés pour les demandes conditionnelles, chacune contenant des informations sur la version de la page Web actuellement stockée dans le cache du navigateur:

"If-Modified-Since" contient la date / l'heure que le navigateur a demandé pour la dernière fois la page Web.

"If-none-match" contient l'ETAG (code de hachage).

Réponse du serveur

Le serveur Web prendra la demande conditionnelle et comparera les informations d'en-tête HTTP avec les informations de sa base de données, renvoyant 200 OK ou 304 non modifiés.

Lorsque "If-Modified-Since" se trouve dans l'en-tête HTTP, le serveur Web comparera la date / l'heure de la page Web de son côté à la date / heure de sa mise en cache par le navigateur.

Lorsque "If-None-Match" se trouve dans l'en-tête HTTP, le serveur Web verra si l'ETAG de la page Web dans sa base de données correspond à l'ETAG de la version mise en cache du navigateur de la page Web.

Lorsque les deux en-têtes sont utilisés pour la vérification, "If-None-Match" aura la priorité sur "si-modifié-sinc".

Si les informations du serveur Web correspondent aux informations d'en-tête, le serveur Web répondra avec un code HTTP 304 non modifié, disant au navigateur d'afficher la version mise en cache de la page Web.Si les informations ne correspondent pas, le serveur récupérera la page Web mise à jour et l'enverra au navigateur où elle sera ensuite téléchargée et mise en cache pour une future demande HTTP conditionnelle.

Le code de réponse 304 est-il important?

La valeur du code 304 HTTP dépend vraiment de la taille du site Web.

Pour les grands sites Web (dizaines de milliers de pages), le code de réponse 304 peut aider à réduire l'utilisation de la bande passante et à augmenter la vitesse du site pour une meilleure expérience utilisateur.Cela pourrait également aider avec le référencement en libérant un budget d'exploration et potentiellement permettre une indexation plus rapide - les robots des moteurs de recherche ne recrandaient généralement pas les pages qu'ils savent n'ont pas été modifiées, ce qui leur permet de trouver et de ramper les pages nouvelles et / ou de mise à jour plus rapidement.

Les petits sites pourraient également bénéficier des compétences de mise en cache du code 304 HTTP, mais les avantages sont assez négligeables.

Cela dit, les petits sites peuvent subir des quantités excessives de trafic, consommant rapidement une bande passante, auquel cas le code 304 pourrait être potentiellement bénéfique.Cependant, il existe de bien meilleures façons d'atténuer un tel problème.

Le code d'état HTTP 304 est-il mauvais?

Le code d'état 304 est un excellent atout pour optimiser les performances Web et enregistrer la bande passante grâce à l'évitement des transferts de données redondantes.

Il y en a qui le comparent à un code d'erreur (4xx ou 5xx) mais ce n'est pas le cas.Il s'agit d'un code de redirection utilisé par les navigateurs (clients) et les serveurs pour communiquer et exécuter une action.

Cela dit, il peut y avoir des situations où la communication entre le client et le serveur est interrompue ou cassée.Appelons ce problème un périphérique 304.

Côté client

Si un utilisateur rencontre constamment un code d'état 304 non modifié à partir d'un site qu'il fréquente, il pourrait indiquer un problème avec le navigateur en ce qu'il n'est pas en mesure d'exécuter correctement la demande HTTP conditionnelle et de télécharger le contenu mis à jour.

Ce problème provient généralement de sources extérieures connectées au navigateur, telles que des fichiers corrompus dans des applications basées sur le navigateur, des fichiers corrompus dans un logiciel récemment téléchargé et des virus ou des logiciels malveillants.

N'importe laquelle de ces sources pourrait corrompre le cache du navigateur et / ou affecter la façon dont le navigateur communique avec le serveur Web.

Du côté serveur

Un 304 périmé peut être dû à un problème avec les paramètres de redirection du serveur Web.

Les paramètres de redirection sont des directives trouvées dans le système de fichiers .htaccess qui utilisent les codes d'état 3XX pour contrôler la façon dont le trafic Web est dirigé ou redirigé sur un site.

Les directives de code d'état 304 mal configurées peuvent entraîner une livraison de contenu périmé, une utilisation inefficace des ressources du serveur ou même des problèmes de compatibilité des navigateurs.

5 façons de réparer un code d'état périmé 304

Heureusement, il y a des actions qui peuvent être prises pour résoudre ou même éviter tout un scénario 304.

Cache de navigateur effacer

La méthode la plus courante et la plus efficace consiste à supprimer tous les antécédents de navigation, les cookies et toutes les autres données mises en cache.

Toutes les pages Web précédemment stockées sont supprimées et les sites Web ne stockent plus les données du navigateur.Lorsqu'un utilisateur visite un site, c'est comme s'il visitait pour la première fois et a maintenant une nouvelle copie du site.

Cache DNS rincer

DNS Cache fonctionne de la même manière de stocker des données comme le cache du navigateur, mais sur le système d'exploitation.Il contient également des données de navigation, ainsi que des adresses IP, des noms d'hôtes et des enregistrements de ressources.

Les données stockées supplémentaires permettent aux pages Web de se charger plus rapidement car le navigateur n'a pas besoin de passer dans l'ensemble du processus du système de noms de domaine.

Et tout comme le nettoyage du cache du navigateur, le cache DNS rinçage réinitialise essentiellement l'expérience de la navigation Web, permettant aux utilisateurs (navigateurs) de collecter un contenu frais cacheable.

Scrativer les virus et les logiciels malveillants

Les navigateurs infectés par des logiciels malveillants ou des virus sont corrompus des fichiers de cache de navigateur et interrompent la communication avec les serveurs Web.

L'exécution d'un scan pour les virus et les logiciels malveillants peut aider à identifier et supprimer la menace, permettant au navigateur de reprendre les opérations normales.

Désactiver / supprimer les extensions du navigateur

Nous aimons tous une bonne extension de navigateur, mais certaines extensions peuvent contenir des fichiers corrompus qui font leur chemin dans le cache du navigateur, affectant la façon dont les en-têtes HTTP communiquent avec ceux du serveur Web.

Examiner les extensions et les désactiver ou les supprimer un par un peut aider à déterminer le coupable.

Examiner les instructions de redirection.

Du côté du serveur, nous avons le .htaccess. Il s'agit d'un fichier de configuration de serveur qui contrôle le comportement d'un site Web au niveau du répertoire, y compris comment gérer les codes d'état 304.

La révision des instructions de redirection dans le fichier peut afficher un problème avec la façon dont le serveur Web communique les codes d'état 304 aux navigateurs.

Conclusion

Le code d'état HTTP 304 non modifié est conçu pour aider à rationaliser la communication entre les clients (navigateurs) et les serveurs, et lors du travail correctement, aide à optimiser les performances Web et à enregistrer la bande passante.

Cependant, s'il n'est pas configuré correctement ou corrompu par les forces extérieures, le statut 304 pourrait créer un problème de contenu périmé, affectant l'expérience utilisateur et le classement des moteurs de recherche.

À la fin de la journée, nous avons un certain nombre de solutions qui peuvent aider à résoudre ou, espérons-le, éviter les effets négatifs du code d'état 304.

N'oubliez pas que le code d'état HTTP 304 n'est pas une erreur.

Happy Hosting!

Écrit par Hostwinds  /  janvier 6, 2024