PHP-Cookie und Sitzungsmechanismus
Liebe Meister, ich war mir nie ganz im Klaren über Cookie- und Sitzungsmechanismen. Gibt es irgendwelche guten Informationen, aus denen ich lernen könnte
Antwortinhalt:
Liebe Meister, ich war mir nie ganz im Klaren über Cookie- und Sitzungsmechanismen. Gibt es irgendwelche guten Informationen, aus denen ich lernen könnte
Tatsächlich erhalten Sie viele Antworten, wenn Sie sich an Suchmaschinen wenden.
Wie können Sie dieses Problem lösen? Betätigungsmechanismus Sie werden es natürlich verstehen.
Welche Probleme lösen Cookies und Sitzungen?
).gleicht die inhärenten Mängel des HTTP-Protokolls aus, das zustandslos ist (es kann nicht erkennen, ob die vorherige Anfrage und die nächste Anfrage vom selben Benutzer stammen
Wie löst man das Problem?
speichert einen
key=>value
-Wert auf der Serverseite und überträgt diesenkey
über ein Cookie. Jedes Mal, wenn der Client eine Anfrage stellt, wird dieserkey
an die Serverseite übermittelt, und der Server kann unterscheiden, ob der Die Anfrage kommt vom selben Benutzer.
Das Obige beantwortet einfach den Mechanismus von Cookie und Sitzung. Nach spezifischen Antworten können Sie mit diesen beiden Fragen suchen.
Bevor Sie ihre Implementierungsprinzipien verstehen, unterscheiden Sie zunächst die Rollen der beiden.
Cookie – eine Art zwischengespeicherter Daten, die im Browser vorhanden sind und vom Browser (in den Einstellungen) deaktiviert werden können. Wenn der Browser Cookies deaktiviert, sind die Cookies nicht verfügbar. Heutzutage schaltet im Allgemeinen niemand mehr Cookies aus.
Da Cookies vom Browser stammen, Im Grunde kann jeder Ihre Cookies ändern. Ist es sicher? Natürlich ist es nicht sicher. Wie können wir also in dieser Zeit sicher sein? Bitte verwenden Sie Session ausnahmslos.
Sitzung – Wie der Name schon sagt, „Sitzung“, wird sie auf dem Server gespeichert, was sich von Cookies unterscheidet, die im Browser des Benutzers gespeichert werden. Und es basiert auf Cookies. Wenn das Cookie ungültig ist, funktioniert die Sitzung nicht ordnungsgemäß. Weil Session seine Session_id in Cookie ablegt. Bei jeder Kommunikation mit dem Website-Server kann die serverseitige Programmiersprache die session_id im Cookie abrufen und die auf dem Server gespeicherten Sitzungsdaten lesen.
session_id ist eine sehr wichtige Sache. Was soll ich tun, wenn ich möchte, dass die Sitzung auch nach der Deaktivierung von Cookies weiterhin nützlich ist? Jede Anfrage enthält einen kv im Header, der die Sitzungs-ID bereitstellt. . . BLA BLA BLA. . . Ich glaube nicht, dass Sie das noch lernen müssen, es ist nur ein Exkurs.
COOKIE – Daten werden in dem aktuell vom Benutzer verwendeten Browser gespeichert (wechseln Sie einen Browser, und das vorherige COOKIE ist verschwunden), schwache Sicherheit
SITZUNG – Daten werden mit hoher Sicherheit auf dem Server gespeichert. Auch ein Browserwechsel erfordert eine erneute Anmeldung. Denn auch die Cookies, auf die es zurückgreift, sind je nach Browser unterschiedlich.
Als nächstes: Wie verwende ich Cookies und Sitzungen? Du kannst es lernen.
Sitzungen können basierend auf Cookies oder Get-Parametern implementiert werden, obwohl dies nicht sicher ist.
Sehen Sie sich das folgende Beispiel für die Verwendung einer MySQL-Speichertabelle zur Implementierung der Sitzungsspeicherung an, um die Beziehung zwischen Sitzung und Cookies grob zu verstehen
<code>CREATE TABLE sessions ( user_id int(10) unsigned NOT NULL, session text NOT NULL, md5 char(32) NOT NULL, PRIMARY KEY (user_id) ) ENGINE=MEMORY DEFAULT CHARSET=utf8; 其中: user_id存储的是用户ID,作为主键. session存储的是用户的会话数组经过serialize或json_encode后的字符串. md5存储的是session字段的MD5值,用于实现Check And Set版本号乐观锁: --读取会话 SELECT session, md5 --写入会话时需要用到这里查出来的md5,就是下面的$last_md5 FROM sessions WHERE user_id = $user_id --写入会话 UPDATE sessions SET session = $str, md5 = md5($str) WHERE user_id = $user_id AND md5 = $last_md5 --检查MD5,确保session字段没有被修改过</code>
Dieses Cookie muss nicht nur Benutzer authentifizieren, sondern darf auch nicht gefälscht und geknackt werden.

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

Wenn Sie ein erfahrener PHP-Entwickler sind, haben Sie möglicherweise das Gefühl, dass Sie dort waren und dies bereits getan haben. Sie haben eine beträchtliche Anzahl von Anwendungen entwickelt, Millionen von Codezeilen debuggt und eine Reihe von Skripten optimiert, um op zu erreichen

Dieses Tutorial zeigt, wie XML -Dokumente mit PHP effizient verarbeitet werden. XML (Extensible Markup-Sprache) ist eine vielseitige textbasierte Markup-Sprache, die sowohl für die Lesbarkeit des Menschen als auch für die Analyse von Maschinen entwickelt wurde. Es wird üblicherweise für die Datenspeicherung ein verwendet und wird häufig verwendet

JWT ist ein offener Standard, der auf JSON basiert und zur sicheren Übertragung von Informationen zwischen Parteien verwendet wird, hauptsächlich für die Identitätsauthentifizierung und den Informationsaustausch. 1. JWT besteht aus drei Teilen: Header, Nutzlast und Signatur. 2. Das Arbeitsprinzip von JWT enthält drei Schritte: Generierung von JWT, Überprüfung von JWT und Parsingnayload. 3. Bei Verwendung von JWT zur Authentifizierung in PHP kann JWT generiert und überprüft werden, und die Funktionen und Berechtigungsinformationen der Benutzer können in die erweiterte Verwendung aufgenommen werden. 4. Häufige Fehler sind Signaturüberprüfungsfehler, Token -Ablauf und übergroße Nutzlast. Zu Debugging -Fähigkeiten gehört die Verwendung von Debugging -Tools und Protokollierung. 5. Leistungsoptimierung und Best Practices umfassen die Verwendung geeigneter Signaturalgorithmen, das Einstellen von Gültigkeitsperioden angemessen.

Eine Zeichenfolge ist eine Folge von Zeichen, einschließlich Buchstaben, Zahlen und Symbolen. In diesem Tutorial wird lernen, wie Sie die Anzahl der Vokale in einer bestimmten Zeichenfolge in PHP unter Verwendung verschiedener Methoden berechnen. Die Vokale auf Englisch sind a, e, i, o, u und sie können Großbuchstaben oder Kleinbuchstaben sein. Was ist ein Vokal? Vokale sind alphabetische Zeichen, die eine spezifische Aussprache darstellen. Es gibt fünf Vokale in Englisch, einschließlich Großbuchstaben und Kleinbuchstaben: a, e, ich, o, u Beispiel 1 Eingabe: String = "TutorialPoint" Ausgabe: 6 erklären Die Vokale in der String "TutorialPoint" sind u, o, i, a, o, ich. Insgesamt gibt es 6 Yuan

Statische Bindung (statisch: :) implementiert die späte statische Bindung (LSB) in PHP, sodass das Aufrufen von Klassen in statischen Kontexten anstatt Klassen zu definieren. 1) Der Analyseprozess wird zur Laufzeit durchgeführt.

Was sind die magischen Methoden von PHP? Zu den magischen Methoden von PHP gehören: 1. \ _ \ _ Konstrukt, verwendet, um Objekte zu initialisieren; 2. \ _ \ _ Destruct, verwendet zur Reinigung von Ressourcen; 3. \ _ \ _ Call, behandeln Sie nicht existierende Methodenaufrufe; 4. \ _ \ _ GET, Implementieren Sie den dynamischen Attributzugriff; 5. \ _ \ _ Setzen Sie dynamische Attributeinstellungen. Diese Methoden werden in bestimmten Situationen automatisch aufgerufen, wodurch die Code -Flexibilität und -Effizienz verbessert werden.
