Cet article explique brièvement l'origine et les propriétés fondamentales des cookies, fournit des informations techniques pour apprendre à définir des cookies en PHP et recommande aux novices PHP de le lire.
Avant d'apprendre à configurer les cookies en PHP, comprenons d'abord la technologie des cookies.
(1) Introduction à la technologie Cookie
Dans l'histoire du développement de la technologie WEB, l'émergence de la technologie Cookie constitue un changement majeur. Tout d'abord, Netscape a introduit la technologie Cookie dans son navigateur Netscape Navigator. Depuis lors, la World Wide Web Association a commencé à prendre en charge la norme Cookie. Plus tard, après une promotion vigoureuse de la part de Microsoft (car la technologie ASP utilisée par le serveur Web IIS de Microsoft utilisait fortement la technologie Cookie), la technologie Cookie a été entièrement prise en charge dans le navigateur Internet Explorer de Microsoft. Jusqu’à présent, la grande majorité des navigateurs supportent la technologie Cookie, ou sont du moins compatibles avec les Cookies.
Utilisation de la technologie.
1) Que sont les cookies ?
Selon la définition de la documentation officielle de Netscape, les cookies sont un moyen pour un serveur ou un script de conserver des informations sur le poste de travail du client sous le protocole HTTP. Les cookies sont de petits fichiers texte enregistrés sur le navigateur de l'utilisateur par le serveur Web, qui peuvent contenir des informations sur l'utilisateur (telles que le numéro d'identification, le mot de passe, la manière dont l'utilisateur achète sur le site Web ou le nombre de fois que l'utilisateur visite le site). Chaque fois qu'un utilisateur se connecte au serveur, le site Web peut accéder aux informations des cookies.
En termes simples, les navigateurs utilisent un ou plusieurs fichiers limités pour prendre en charge les cookies. Ces fichiers sont appelés fichiers cookies sur les machines utilisant les systèmes d'exploitation Windows et fichiers cookies magiques sur les machines Macintosh. Ces fichiers sont utilisés par les sites Web pour y stocker des données de cookies.
Les sites Web peuvent insérer des informations dans ces fichiers cookies, ce qui peut avoir des effets secondaires pour certains utilisateurs Internet. Certains utilisateurs pensent que cela provoque une atteinte à la vie privée. Pire encore, d'autres pensent que les cookies constituent une atteinte à l'espace personnel et peuvent présenter des risques pour la sécurité des ordinateurs des utilisateurs.
Actuellement, certains cookies sont temporaires et d'autres sont persistants. Les cookies temporaires ne sont enregistrés sur le navigateur que pendant une période de temps spécifiée. Une fois la période spécifiée expirée, le cookie sera effacé par le système. Par exemple, en PHP, les cookies sont utilisés pour suivre la progression de l'utilisateur jusqu'à ce que l'utilisateur quitte le site Web. Un cookie persistant est enregistré dans le fichier cookie de l'utilisateur et peut toujours être appelé au prochain retour de l'utilisateur.
En enregistrant les cookies dans un fichier cookie, certains utilisateurs iront trop loin et penseront que cela posera de gros problèmes. La raison principale est que certains utilisateurs craignent que les cookies ne suivent leurs habitudes de navigation en ligne, par exemple les types de sites que les utilisateurs aiment visiter et les activités auxquelles ils aiment participer. Je crains qu'une fois que ce type d'informations personnelles tombe entre les mains de certaines personnes ayant des arrière-pensées, l'individu puisse devenir la cible de nombreuses publicités inutiles, voire subir des dommages inattendus. Cependant, cette inquiétude ne se produira pas du tout, car les utilisateurs extérieurs au site Web ne peuvent pas obtenir d'informations sur les cookies sur le site Web. Il est donc impossible d'utiliser des cookies à cette fin. Cependant, en raison des malentendus de certains utilisateurs et de « fausses rumeurs », certains développeurs de navigateurs n'ont d'autre choix que de donner des réponses familières (par exemple, Netscape Navigator 4.0 et Internet Explorer 3.0 offrent tous deux la possibilité de bloquer les cookies).
Le résultat de l’attente si longue de la technologie Cookie est qu’elle oblige de nombreux développeurs de navigateurs à fournir un contrôle flexible sur les Cookies dans leurs navigateurs. Par exemple, les deux principaux navigateurs actuels, Netscape Navigator et Internet Explorer, gèrent les cookies de cette manière
: Netscape Navigator 4.0 peut non seulement accepter les avertissements relatifs aux cookies, mais également bloquer les cookies ; Internet Explorer 3.0 peut également bloquer les cookies, mais dans Internet Explorer 4.0, il ne peut accepter que les avertissements sans fournir d'option de blocage. Cependant, dans Internet.
Les versions mises à jour après Explorer 4.0 ont ajouté la possibilité de bloquer les cookies.
De plus, bon nombre des technologies les plus récentes peuvent même bloquer les cookies sur les navigateurs qui ne peuvent pas bloquer les cookies. Par exemple, vous pouvez limiter l'utilisation des cookies en définissant différents types de fichiers de cookies. Malheureusement, si vous souhaitez bloquer complètement les cookies, vous rejetterez certainement de nombreuses pages du site. Parce qu'aujourd'hui, de nombreux développeurs de sites Web sont tombés amoureux des puissantes fonctions de la technologie des cookies. Par exemple, l'utilisation des objets Session ne peut être séparée de la prise en charge des cookies.
Même si certains internautes se disputent encore aujourd’hui à propos des cookies, la grande majorité des internautes a encore tendance à accepter les cookies. Nous pouvons donc utiliser en toute sécurité la technologie Cookie pour développer nos pages WEB.
2) Comment fonctionnent les cookies ?
Pour comprendre les cookies, il est essentiel de savoir comment ils fonctionnent. De manière générale, les cookies sont renvoyés du serveur au navigateur via les en-têtes HTTP. Tout d'abord, le serveur utilise l'en-tête Set-Cookie dans la réponse pour créer un Cookie. Ensuite, le navigateur inclut le Cookie créé dans sa requête via l'en-tête Cookie, et le renvoie au serveur, complétant ainsi l'argument du navigateur.
Par exemple, nous avons créé un cookie nommé login pour contenir les informations du visiteur. Lors de la création du cookie, l'en-tête côté serveur est celui indiqué ci-dessous. Il est supposé que le nom enregistré du visiteur est « Michael Jordan » et le cookie créé est également. Des attributs tels que le chemin,
le domaine, expire, etc. sont spécifiés.
Set-Cookie:login=Michael Jordan;path=/;domain=msn.com;
expires=Monday,01-Mar-99 00:00:01 GMT
L'en-tête ci-dessus ajoutera automatiquement un enregistrement au fichier cookie de l'ordinateur du navigateur. Le navigateur attribue la valeur du cookie portant le nom de variable « login » à « Michael Jordan ». Notez que lors du processus de livraison proprement dit, la valeur de ce cookie passe par la méthode URLEncode.
Opération d’encodage d’URL. Une fois l'en-tête HTTP contenant la valeur du cookie enregistré dans le fichier Cookie du navigateur, l'en-tête demande au navigateur de renvoyer le cookie au serveur en ignorant le chemin d'accès à la requête, complétant ainsi l'opération d'authentification du navigateur.
De plus, nous utilisons certains attributs du cookie pour limiter l'utilisation du cookie. Par exemple, l'attribut Domaine peut limiter l'envoi de cookies côté navigateur. Dans l'exemple ci-dessus, le cookie ne peut être envoyé qu'au serveur désigné, et n'ira jamais vers d'autres sites Web tels que www.phpq.net . L'attribut Expire spécifie la période pendant laquelle le cookie est enregistré. Par exemple, le cookie ci-dessus n'est enregistré sur le navigateur que pendant 1 seconde le 1er mars 1999. Bien entendu, s'il y a trop de cookies sur le navigateur et dépassent la plage autorisée par le système, le navigateur les supprimera automatiquement. Quant à l'attribut Path, il permet de préciser quel chemin de répertoire le cookie sera envoyé au serveur.
Remarque : Une fois que le navigateur a créé un cookie, chaque demande pour ce site Web portera ce cookie dans l'en-tête ; cependant, les cookies pour les demandes provenant d'autres sites Web ne seront jamais envoyés. Et le navigateur continuera à l'envoyer jusqu'à l'expiration du cookie. La technologie des cookies est une technologie très controversée. Depuis sa création, elle est devenue un sujet de débat pour la majorité des internautes et des développeurs Web. Certains internautes, y compris certains experts du Web expérimentés, ne sont pas satisfaits de sa création et de sa promotion. Ce n'est pas parce que la fonctionnalité de la technologie des cookies est trop faible ou pour d'autres raisons de performances techniques, mais simplement parce qu'ils estiment que l'utilisation des cookies cause un préjudice. à la vie privée des utilisateurs du réseau. Un cookie étant un petit fichier texte enregistré sur le navigateur de l'utilisateur par le serveur Web, il contient des informations sur l'utilisateur (telles qu'un numéro d'identification, un mot de passe, la manière dont l'utilisateur achète sur le site Web ou le nombre de fois où l'utilisateur visite le site). Alors, qu’est-ce que la technologie Cookie exactement ? Cela porte-t-il réellement atteinte à la vie privée des internautes ? Après avoir lu les informations ci-dessus, vous devriez avoir une mesure en tête.