Heim > Backend-Entwicklung > PHP-Tutorial > Detaillierte Erläuterung des Unterschieds zwischen Cookie und Sitzung

Detaillierte Erläuterung des Unterschieds zwischen Cookie und Sitzung

jacklove
Freigeben: 2023-04-01 08:28:01
Original
1840 Leute haben es durchsucht

Detaillierte Erklärung des Unterschieds zwischen Cookie und Sitzung

Dies sind Grundkenntnisse, die jedoch gründlich verstanden werden müssen. Lassen Sie uns zunächst eine kurze Einführung geben.

Definition der beiden:

Wenn Sie auf der Website surfen, sendet der WEB-Server zunächst eine kleine Datenmenge an Ihren Computer und das Cookie hilft Ihnen beim Tippen auf der Website Text oder einige Auswahlmöglichkeiten werden aufgezeichnet

. Wenn Sie die gleiche Website das nächste Mal besuchen, prüft der WEB-Server zunächst, ob beim letzten Mal Cookie-Informationen vorhanden sind. Wenn ja, beurteilt er den Benutzer anhand des Inhalts im Cookie

und Senden Sie eine bestimmte Webinhalte für Sie. Die Verwendung von Cookies ist sehr verbreitet. Viele Websites, die personalisierte Dienste anbieten, verwenden Cookies

, um Benutzer zu identifizieren, um benutzerspezifische Inhalte zu senden, z. B. kostenlose E-Mail-Websites mit Webschnittstellen.


Konkret verwendet der Cookie-Mechanismus eine Lösung, die den Zustand auf der Clientseite beibehält, während der Sitzungsmechanismus eine Lösung verwendet, die den Zustand auf der Serverseite beibehält.

Gleichzeitig sehen wir auch, dass der Sitzungsmechanismus möglicherweise den Cookie-Mechanismus verwenden muss, da die Lösung zur Aufrechterhaltung des Status auf der Serverseite auch eine Identität auf der Clientseite speichern muss

um den Zweck der Identitätsspeicherung zu erreichen, aber es gibt tatsächlich andere Möglichkeiten.

Cookie-Mechanismus. Die orthodoxe Cookie-Verteilung wird durch die Erweiterung des HTTP-Protokolls erreicht. Der Server fügt dem HTTP-Antwortheader eine spezielle Befehlszeile hinzu, um den

-Browser aufzufordern, das entsprechende Cookie gemäß den Anweisungen zu generieren. Allerdings können auch reine clientseitige Skripte wie JavaScript oder VBScript Cookies erzeugen. Der Einsatz von Cookies

wird vom Browser nach bestimmten Grundsätzen automatisch im Hintergrund an den Server gesendet. Der Browser überprüft alle gespeicherten Cookies

größer oder gleich dem Speicherort der anzufordernden Ressource, wird das Cookie an den HTTP-Anfrageheader der angeforderten Ressource angehängt und gesendet an den Server.

Der Inhalt von Cookies umfasst hauptsächlich: Name, Wert, Ablaufzeit, Pfad und Domäne. Der Pfad und die Domäne bilden zusammen den Geltungsbereich des Cookies. Wenn die Ablaufzeit nicht festgelegt ist, bedeutet dies, dass die Lebensdauer dieses

-Cookies während der Browsersitzung liegt. Wenn das Browserfenster geschlossen wird, verschwindet das Cookie. Diese Art von Cookie, das für die Dauer der Browsersitzung bestehen bleibt, wird als Sitzungscookie bezeichnet.

Sitzungscookies werden im Allgemeinen nicht auf der Festplatte, sondern im Speicher gespeichert. Dieses Verhalten ist jedoch nicht durch die Spezifikation geregelt. Wenn die Ablaufzeit eingestellt ist, speichert der Browser das Cookie

auf der Festplatte. Wenn Sie den Browser schließen und erneut öffnen, bleiben diese Cookies weiterhin gültig, bis die eingestellte Ablaufzeit überschritten ist. Auf der Festplatte gespeicherte Cookies können von verschiedenen Browserprozessen gemeinsam genutzt werden, beispielsweise von zwei IE-Fenstern. Für im Speicher gespeicherte Cookies verfügen verschiedene Browser über unterschiedliche Verarbeitungsmethoden

Sitzungsmechanismus. Der Sitzungsmechanismus ist ein serverseitiger Mechanismus. Der Server verwendet eine Struktur ähnlich einer Hash-Tabelle (oder verwendet möglicherweise eine Hash-Tabelle), um Informationen zu speichern.

Wenn das Programm eine Sitzung für die Anfrage eines Clients erstellen muss, prüft der Server zunächst, ob die Anfrage des Clients bereits eine Sitzungskennung enthält

(Sitzungs-ID genannt). Wenn ja, zeigt „Contains“ an Für diesen Client wurde bereits eine Sitzung erstellt, und der Server ruft diese Sitzung entsprechend der Sitzungs-ID

ab (wenn sie nicht abgerufen werden kann, wird eine neue erstellt, wenn die Client-Anfrage dies nicht enthält). die Sitzungs-ID. Zu diesem Zweck erstellt der Client eine Sitzung und generiert eine dieser Sitzung zugeordnete Sitzungs-ID.

Der Wert der Sitzungs-ID sollte eine Zeichenfolge sein, die sich weder wiederholt noch leicht zu erkennen ist gefälscht. Die Sitzungs-ID wird in dieser Antwort

zur Speicherung an den Client zurückgegeben. Die Methode zum Speichern dieser Sitzungs-ID kann Cookies verwenden, sodass der Browser während des Interaktionsprozesses diese Kennung gemäß den Regeln automatisch an den

-Server senden kann. Im Allgemeinen ähnelt der Name dieses Cookies SEEESIONID. Aber Cookies können künstlich deaktiviert werden, und es müssen andere Mechanismen vorhanden sein, damit

bei deaktivierten Cookies die Sitzungs-ID immer noch an den Server zurückgeben kann.

Eine häufig verwendete Technik ist das sogenannte URL-Rewriting, bei dem die Sitzungs-ID direkt an das Ende des URL-Pfads angehängt wird. Es gibt auch eine Technik namens Form Hidden Fields. Das heißt, der Server

ändert das Formular automatisch und fügt ein ausgeblendetes Feld hinzu, damit die Sitzungs-ID beim Absenden des Formulars an den Server zurückgegeben werden kann. Zum Beispiel:

<form name="testform" action="/xxx"> 
<input type="hidden" name="jsessionid" value="ByOK3vjFD75aPnrF7C2HmdnV6QZcEbzWoWiBYEnLerjQ99zWpBng!-145788764"> 
<input type="text"> 
</form>
Nach dem Login kopieren


Tatsächlich kann diese Technik einfach durch Anwenden des URL-Rewritings auf die Aktion ersetzt werden.

Der Unterschied zwischen Cookies und Sitzungen:

1. Cookie-Daten werden im Browser des Kunden gespeichert und Sitzungsdaten werden auf dem Server abgelegt.

2. Cookies sind nicht sehr sicher. Andere können das lokal gespeicherte COOKIE analysieren und COOKIE-Täuschungen durchführen.
Aus Sicherheitsgründen sollte eine Sitzung verwendet werden.

3. Die Sitzung wird innerhalb eines bestimmten Zeitraums auf dem Server gespeichert. Wenn der Zugriff zunimmt, wird die Leistung Ihres Servers stärker beansprucht
Angesichts der Verringerung der Serverleistung sollte COOKIE verwendet werden.

4. Die von einem einzelnen Cookie gespeicherten Daten dürfen 4 KB nicht überschreiten. Viele Browser beschränken die Speicherung auf bis zu 20 Cookies.

5. Also persönlicher Vorschlag:
Speichern Sie wichtige Informationen wie Anmeldeinformationen als SITZUNG
Wenn andere Informationen gespeichert werden müssen, können diese in COOKIE abgelegt werden

Dieser Artikel erklärt Cookies und Sitzungen Eine detaillierte Erklärung des Unterschieds finden Sie auf der chinesischen PHP-Website für weitere verwandte Inhalte.

Verwandte Empfehlungen:

Einfache PHP+MySQL-Paging-Klasse

Zwei Baumarrays ohne Rekursionskonstruktor

HTML in Excel umwandeln und Druck- und Downloadfunktionen realisieren

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des Unterschieds zwischen Cookie und Sitzung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage