Maison  >  Article  >  développement back-end  >  Apprenez les réponses HTTP en PHP : en-têtes, codes de statut et cookies

Apprenez les réponses HTTP en PHP : en-têtes, codes de statut et cookies

WBOY
WBOYoriginal
2023-06-19 22:10:471682parcourir

Dans le développement Web, le protocole HTTP est le protocole le plus utilisé. L'apprentissage de la partie réponse HTTP en PHP, y compris les en-têtes, les codes d'état et les cookies, aidera les développeurs à mieux comprendre le mécanisme d'accès du site Web et à améliorer la vitesse de réponse et la sécurité du site Web.

En-têtes dans la réponse HTTP

Les en-têtes de réponse HTTP font référence à certaines métadonnées renvoyées par le serveur lors de la réponse aux requêtes du navigateur. Ces métadonnées contiennent des informations sur la réponse, telles que le type de serveur, le type de données de réponse, le temps de réponse, etc. Les métadonnées de l'en-tête de réponse HTTP se composent d'une paire clé-valeur, chaque paire de paires clé-valeur est séparée par deux points et les paires clé-valeur sont séparées par des retours chariot et des sauts de ligne.

En PHP, nous pouvons utiliser la fonction header() pour définir l'en-tête de réponse. Par exemple, nous pouvons ajouter un en-tête Expires pouvant être mis en cache à la page Web :

header("Expires: ".gmdate('D, d M Y H:i:s', time() + 3600) . ' GMT');

Le code ci-dessus définira l'expiration dans l'en-tête de réponse pour qu'il soit mis en cache pendant 1 heure.

Code d'état HTTP

Le code d'état HTTP est un code à trois chiffres utilisé pour transmettre des informations sur les résultats du traitement de la réponse HTTP. Les codes d'état courants sont :

  • 200 OK : La demande du client a réussi.
  • 301 Déplacée définitivement : la ressource demandée a été définitivement déplacée vers une nouvelle URL.
  • 403 Interdit : Le serveur a refusé la demande d'accès.
  • 404 Not Found : Le serveur ne trouve pas la ressource demandée.
  • Erreur interne du serveur 500 : le serveur a rencontré une erreur imprévisible.

En PHP, nous pouvons utiliser la fonction header() pour définir le code d'état.

Par exemple, nous pouvons définir un code d'état 404 pour indiquer que la ressource demandée n'existe pas :

header("HTTP/1.1 404 Not Found");

Ce code d'état sera affiché dans la réponse comme :

HTTP/1.1 404 Not Found

Cookie

Les cookies sont stockés sur l'ordinateur client par le serveur Web Petits fichiers utilisés pour stocker les informations de session, les préférences de l'utilisateur, etc. Grâce aux cookies, les serveurs Web peuvent partager des données entre plusieurs pages, améliorant ainsi l'expérience d'accès au site Web de l'utilisateur.

En PHP, nous pouvons utiliser la fonction setcookie() pour créer et gérer les cookies. Par exemple, nous pouvons créer un cookie avec un nom d'utilisateur, une valeur de John Doe, et une durée de validité de 1 heure :

setcookie("username", "John Doe", time()+3600);

Le code ci-dessus créera un cookie avec le nom d'utilisateur, une valeur de John Doe, et une durée de validité de 1 heure sur l'ordinateur de l'utilisateur.

Lors de la prochaine visite, nous pourrons obtenir et gérer les cookies via le tableau $_COOKIE. Par exemple, nous pouvons obtenir le cookie nommé nom d'utilisateur via le code suivant :

$username = $_COOKIE['username'];

Grâce au code ci-dessus, nous pouvons obtenir le cookie nommé nom d'utilisateur précédemment défini pour passer à l'étape suivante.

Résumé

Les en-têtes, les codes de statut et les cookies dans les réponses HTTP sont une partie très importante du processus de développement Web. La définition correcte des en-têtes de réponse, des codes d'état et des cookies peut améliorer la vitesse de réponse et la sécurité du site Web, améliorant ainsi l'expérience utilisateur. L'apprentissage des réponses HTTP en PHP nous aidera à mieux comprendre ces mécanismes et à optimiser davantage notre travail de développement Web.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn