Was tun, wenn die PHP-Sitzung nicht funktioniert?
Lösung für PHP-Sitzung funktioniert nicht: Rufen Sie zuerst die Funktion „session_save_path()“ am Anfang der Seite auf und verweisen Sie dann auf das Verzeichnis, in dem die Sitzung gespeichert ist.
Empfohlen: „PHP-Video-Tutorial“
Der Grund für den PHP-Sitzungsfehler
Kürzlich ist im Projekt des Unternehmens ein Sitzungsfehlerproblem aufgetreten ein paar Minuten. Später habe ich es lange online gelesen und seinen Mechanismus verstanden: Die Sitzung wird in einem öffentlichen Pfad in Lunix gespeichert, was zu Problemen führt. Wenn das Programm viele Sitzungsanwendungen enthält, wirken sie sich gegenseitig aus.
Später habe ich versucht, session.gc_maxlifetime zu ändern, aber ich habe festgestellt, dass dieser Parameter grundsätzlich nicht funktioniert. Standardmäßig werden Sitzungsinformationen in PHP in Form von Textdateien im temporären Dateiverzeichnis des Systems gespeichert. Dieser Pfad wird durch den Konfigurationsparameter session.save_path angegeben. Unter Linux ist dieser Pfad normalerweise tmp und unter Windows normalerweise C:WindowsTemp. Wenn mehrere PHP-Anwendungen auf dem Server vorhanden sind, speichern diese ihre Sitzungsdateien im selben Verzeichnis (da sie denselben session.save_path-Parameter verwenden). Ebenso starten diese PHP-Anwendungen mit einer bestimmten Wahrscheinlichkeit auch GC und scannen alle Sitzungsdateien.
Das Problem besteht darin, dass GC bei laufendem Betrieb nicht zwischen Sitzungen auf verschiedenen Websites unterscheidet. Beispielsweise ist gc_maxlifetime für Standort A auf 2 Stunden und gc_maxlifetime für Standort B auf den Standardwert von 24 Minuten festgelegt. Wenn der GC von Site B startet, scannt er das öffentliche temporäre Dateiverzeichnis und löscht alle Sitzungsdateien, die älter als 24 Minuten sind, unabhängig davon, ob sie von Site A oder B stammen. Auf diese Weise ist die gc_maxlifetime-Einstellung von Site A nutzlos.
Der spezifische Vorgang besteht also darin, dass jedes Projekt seinen eigenen Sitzungspfad hat. Es ist sehr einfach, das Problem zu finden und zu lösen. Rufen Sie die Funktion session_save_path() am Anfang der Seite auf, die den Parameter session.save_path ändern und das Verzeichnis, in dem die Sitzung gespeichert wird, auf ein dediziertes Verzeichnis verweisen kann, z. B. tmpmyapp. Auf diese Weise funktioniert der Parameter gc_maxlifetime normal.
Spezifischer Code:
session_start(); ini_set('session.save_path','/tmp/'); //6个钟头 ini_set('session.gc_maxlifetime',21600); //保存一天 $lifeTime = 24 * 3600; setcookie(session_name(), session_id(), time() + $lifeTime, "/");
Das obige ist der detaillierte Inhalt vonWas tun, wenn die PHP-Sitzung nicht funktioniert?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Das Problem wurde im Springboot-Projekt-Produktions-Session-Out-Timeout gefunden: In der Testumgebung wurde der Session-Out durch Ändern der application.yaml konfiguriert, nachdem die Session-Out-Konfiguration überprüft wurde In Kraft trat, wurde die Ablaufzeit für die Veröffentlichung in der Produktionsumgebung direkt auf 8 Stunden festgelegt. Allerdings habe ich am Mittag die Rückmeldung von Kunden erhalten, dass die Projektablaufzeit kurz eingestellt wurde. Wenn eine halbe Stunde lang keine Aktion ausgeführt wird, läuft die Sitzung ab und erfordert wiederholte Anmeldungen. Lösen Sie das Problem der Handhabung der Entwicklungsumgebung: Das Springboot-Projekt verfügt über integriertes Tomcat, sodass der in application.yaml im Projekt konfigurierte Sitzungsausgang wirksam ist. Produktionsumgebung: Die Produktionsumgebung ist freigegeben

Ein Sitzungsfehler wird normalerweise durch den Ablauf der Sitzungslebensdauer oder das Herunterfahren des Servers verursacht. Die Lösungen: 1. Verlängern Sie die Lebensdauer der Sitzung. 3. Verwenden Sie Cookies. 4. Aktualisieren Sie die Sitzung.

Lösung des domänenübergreifenden Problems von PHPSession Bei der Entwicklung der Front-End- und Back-End-Trennung sind domänenübergreifende Anforderungen zur Norm geworden. Wenn es um domänenübergreifende Probleme geht, nutzen wir in der Regel Sitzungen und verwalten diese. Aufgrund von Richtlinieneinschränkungen für den Browserursprung können Sitzungen jedoch standardmäßig nicht über Domänen hinweg gemeinsam genutzt werden. Um dieses Problem zu lösen, müssen wir einige Techniken und Methoden verwenden, um eine domänenübergreifende gemeinsame Nutzung von Sitzungen zu erreichen. 1. Die häufigste Verwendung von Cookies zum domänenübergreifenden Teilen von Sitzungen

Lösung für das Problem, dass die PHP-Sitzung nach der Aktualisierung verschwindet: 1. Öffnen Sie die Sitzung über „session_start();“ 2. Schreiben Sie alle öffentlichen Konfigurationen in eine PHP-Datei 3. Der Variablenname darf nicht mit dem Array-Index identisch sein; 4. Überprüfen Sie einfach den Speicherpfad der Sitzungsdaten in phpinfo und prüfen Sie, ob die Sitzung im Dateiverzeichnis erfolgreich gespeichert wurde.

Die Standardablaufzeit der Sitzungs-PHP beträgt 1440 Sekunden, also 24 Minuten. Das heißt, wenn der Client länger als 24 Minuten nicht aktualisiert wird, läuft die aktuelle Sitzung ab, wenn der Benutzer den Browser schließt Die Sitzung wird nicht mehr existieren.

1. Implementieren der SMS-Anmeldung basierend auf der Sitzung 1.1 Ablaufdiagramm der SMS-Anmeldung 1.2 Implementieren des Sendens eines SMS-Bestätigungscodes Beschreibung der Front-End-Anfrage: Beschreibung der Anfragemethode POST-Anfragepfad/Benutzer/Code-Anfrageparameter Telefon (Telefonnummer) Rückgabewert Keine Back-End-Schnittstelle Implementierung: @Slf4j@ ServicepublicclassUserServiceImplextendsServiceImplimplementsIUserService{@OverridepublicResultsendCode(Stringphone,HttpSessionsession){//1 Überprüfen Sie die Mobiltelefonnummer, wenn

Wenn Sie eine PHP-Sitzung (Sitzung) verwenden, werden Sie manchmal feststellen, dass die Sitzung in einer Datei normal gelesen werden kann, in einer anderen Datei jedoch nicht. Dies kann Sie verwirren, da Sitzungsdaten in der gesamten Anwendung gemeinsam genutzt werden sollen. In diesem Artikel wird erläutert, wie Sie PHP-Sitzungsdaten in mehreren Dateien korrekt lesen und schreiben.

JavaScript-Cookies Die Verwendung von JavaScript-Cookies ist die effektivste Möglichkeit, Präferenzen, Käufe, Provisionen und andere Informationen zu speichern und zu verfolgen. Informationen, die für ein besseres Besuchererlebnis oder Website-Statistiken benötigt werden. PHPCookieCookies sind Textdateien, die auf Client-Computern gespeichert und zu Nachverfolgungszwecken aufbewahrt werden. PHP unterstützt transparent HTTP-Cookies. Wie funktionieren JavaScript-Cookies? Ihr Server sendet einige Daten in Form eines Cookies an den Browser Ihres Besuchers. Browser können Cookies akzeptieren. Falls vorhanden, wird es als reiner Textdatensatz auf der Festplatte des Besuchers gespeichert. Wenn ein Besucher nun eine andere Seite der Website erreicht
