Maison > Article > interface Web > La relation entre les cookies et les sessions
Étant donné que le protocole HTTP est un protocole sans état, lorsque le serveur doit enregistrer le statut de l'utilisateur, il doit utiliser un mécanisme pour identifier le utilisateur spécifique, ce mécanisme est Session. Dans un scénario typique, comme un panier d'achat, lorsque vous cliquez sur le bouton de commande, puisque le protocole HTTP est sans état, vous ne savez pas quel utilisateur l'a utilisé, le serveur doit donc le créer. une session spécifique pour l'utilisateur spécifique. La session est utilisée pour identifier cet utilisateur et le suivre afin que nous sachions combien de livres se trouvent dans le panier. Cette session est enregistrée côté serveur et possède un identifiant unique. Il existe de nombreuses façons d'enregistrer une session côté serveur, notamment la mémoire, la base de données et les fichiers. Le transfert de session doit également être pris en compte lors du clustering. Dans les grands sites Web, il existe généralement un cluster de serveurs de session dédié pour enregistrer les sessions utilisateur. Les informations de session sont stockées en mémoire et certains services de mise en cache tels que Memcached sont utilisés pour stocker les sessions.
La session est stockée sur le serveur, alors comment les informations sur le client peuvent-elles être rapidement mises en correspondance avec le serveur (plusieurs fois, lorsque vous vous connectez à un site Web, la prochaine fois que vous connectez-vous Vous n’avez alors plus besoin de saisir votre nom d’utilisateur et votre mot de passe, c’est à cela que servent les cookies). Chaque fois qu'une requête HTTP est effectuée, le client enverra les informations de cookie correspondantes au serveur. En fait, la plupart des applications utilisent des cookies pour mettre en œuvre le suivi de session. Lorsqu'une session est créée pour la première fois, le serveur indiquera au client dans le protocole HTTP qu'un identifiant de session doit être enregistré dans le cookie. Celui-ci sera enregistré pour chaque. demande ultérieure. L'ID de session est envoyé au serveur et je sais qui vous êtes. Quelqu'un a demandé si le navigateur du client était désactivé Et les cookies ? Généralement, dans ce cas, une technologie appelée réécriture d'URL est utilisée pour le suivi de session. Autrement dit, pour chaque interaction HTTP, un paramètre tel que sid=xxxxx sera ajouté à l'URL, et le serveur l'utilisera pour identifier l'utilisateur.
Les cookies peuvent en fait être utilisés dans certains scénarios conviviaux. Imaginez que vous vous êtes connecté une fois à un site Web et que vous ne souhaitez plus accéder à votre compte la prochaine fois que vous vous connectez. Que devez-vous faire ? Ces informations peuvent être écrites dans le cookie. Lors de la visite du site Web, le script de la page du site Web peut lire ces informations et remplir automatiquement le nom d'utilisateur pour vous, ce qui peut faciliter la tâche de l'utilisateur. C'est aussi l'origine du nom du cookie, une petite douceur pour les utilisateurs.
La session est une structure de données enregistrée côté serveur, utilisée pour suivre (identifier) le statut de l'utilisateur. Ces données peuvent être enregistrées dans des clusters, des bases de données et des fichiers
Cookie ; est un mécanisme permettant au client de sauvegarder les informations utilisateur. Il est également utilisé pour enregistrer certaines informations utilisateur. C'est également un moyen d'implémenter une session.
1. La session est côté serveur, et le cookie est côté client (navigateur)
2 La session est stockée dans un fichier sur le serveur par défaut (pas en mémoire) <.>3. Le déroulement de la session dépend de l'identifiant de session, et l'identifiant de session est stocké dans le cookie, c'est-à-dire que si le navigateur désactive les cookies, la session sera également invalide (mais cela peut être réalisé dans d'autres façons, comme en passant session_id dans l'URL)
4, la session peut être placée. Elle peut être dans un fichier, une base de données ou une mémoire.
5. La session est généralement utilisée pour la vérification de l'utilisateur. Par conséquent, l'essentiel du maintien d'une session est l'identifiant unique du client, c'est-à-dire l'identifiant de session
1. Les données des cookies sont stockées sur le navigateur du client et les données de session sont stockées sur le serveur.
2. Les cookies ne sont pas très sûrs. D'autres peuvent analyser les cookies stockés localement et les tromper
La session doit être utilisée pour des raisons de sécurité.
3. La session sera enregistrée sur le serveur dans un certain délai. Lorsque l'accès augmente, cela consommera davantage de performances de votre serveur
Afin de réduire les performances du serveur, COOKIE doit être utilisé.
4. Les données enregistrées par un seul cookie ne peuvent pas dépasser 4K. De nombreux navigateurs limitent un site à enregistrer jusqu'à 20 cookies.
5. Suggestion donc personnelle :
Stockez les informations importantes telles que les informations de connexion en tant que SESSION
Si d'autres informations doivent être conservées, vous pouvez les mettre dans COOKIE
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!