Heim  >  Artikel  >  Backend-Entwicklung  >  Was tun, wenn der PHP-Sitzungssprung fehlschlägt?

Was tun, wenn der PHP-Sitzungssprung fehlschlägt?

藏色散人
藏色散人Original
2020-08-10 09:46:302913Durchsuche

php-Sitzungssprungfehler können nur behoben werden durch: 1. Überprüfen Sie die Zugriffsberechtigungen von „session.save_path“ und ändern Sie sie. 2. Ändern Sie die Einstellungen von „session.use_trans_sid“ und „session.use_only_cookies“.

Was tun, wenn der PHP-Sitzungssprung fehlschlägt?

Empfohlen: „PHP-Video-Tutorial

Im Allgemeinen kommt es zu seitenübergreifenden Sitzungsfehlern, die im Wesentlichen mit der Konfiguration von PHP zusammenhängen:

1. session.save_path hat unzureichende Zugriffsrechte oder es liegt ein Problem mit dem Pfad vor;

2. Es liegt ein Problem mit den Einstellungen von session.use_trans_sid und session.use_only_cookies vor.

Überprüfen Sie php.ini:

Es wurde festgestellt, dass der Pfad normal ist und der Sitzungswert genau in der Datei aufgezeichnet ist, sodass session.save_path in Ordnung ist.

Überprüfen Sie dann session.use_trans_sid und finden Sie:

Erklären Sie, dass es zwei Möglichkeiten gibt, eine Sitzung zu bestehen: Eine basiert auf der Cookie-Übergabe und die andere auf der URL vorbei.

Cookie-Zustellung bedeutet, die Sitzungsinformationen auf dem Client über Cookies zu speichern und die Cookie-Informationen dann automatisch bereitzustellen, wenn eine Anfrage an den Server gesendet wird, damit der Server sie lesen kann. Dies ist eine häufig verwendete Methode.

Bei der URL-Übermittlung werden nach dem Klicken auf den Sprunglink automatisch Sitzungsinformationen hinzugefügt, z. B. a.php?sessid=..., und dann automatisch $_GET['sessid'], um sie auf der neuen Seite zu lesen. Dieser Vorgang erfolgt automatisch und verborgen, so unmerklich wie die Weiterleitung durch Cookies.

Und session.use_trans_sid gibt an, ob die URL zum Übergeben der Sitzung verwendet werden soll. Wenn also der Wert von session.use_trans_sid 0 ist und der Browser des Benutzers Cookies deaktiviert, ist die Sitzung seitenübergreifend ungültig.

Aber nachdem session.use_trans_sid auf 1 gesetzt wurde, schlug die Sitzung immer noch fehl, also überprüften wir session.use_only_cookies und fanden:

.

Session.use_only_cookies gibt an, ob Cookies nur zum Übergeben von Sitzungen verwendet werden sollen. Wenn es also auf 1 gesetzt ist, wird die URL-Übergabe auch dann nicht verwendet, wenn session.use_trans_sid=1.

Daher müssen Sie session.use_trans_sid=1, session.use_only_cookies=0 festlegen, um die URL-Übermittlungsmethode zu aktivieren.

Das obige ist der detaillierte Inhalt vonWas tun, wenn der PHP-Sitzungssprung fehlschlägt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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