it-swarm.com.de

Wie ändert man den session_save_path in der php.ini-Datei?

Ich habe ein gemeinsames Hosting auf Paddy.

Ich habe versucht, den Sitzungsspeicherpfad in der php.ini-Datei mit dieser Zeile zu ändern.

sessions.save_path = "/session"

Ich habe den Speicherpfad der Sitzungen mit der Funktion sessions.save_path () kontrolliert. Es gibt /tmp vor und nach dem Ändern von php.ini zurück.

Ist es möglich, den Sitzungsspeicherpfad bei Shared Hosting zu ändern?
Wo bin ich falsch?

14
ocanal

Sie können den Sitzungsspeicherpfad für Shared Hosting ändern, indem Sie eine benutzerdefinierte php.ini erstellen.

Fügen Sie dies in Ihre Datei ein: session.save_path = "/path/to/your/folder"

Ansonsten können Sie verwenden:

ini_set('session.save_path', '/path/to/your/folder')

Der von Ihnen verwendete Ordner sollte sich unter Ihrer Domäne/Ihrem Konto befinden, jedoch nicht über einen Webbrowser zugänglich sein. Es muss auch über weltweit schreibbare Berechtigungen verfügen. Und jede Seite, die Sitzungen verwendet, muss diese Zeile enthalten.

29
Mughil

Es ist session.save_path und nicht sessions.save_path (es wurde möglicherweise umbenannt oder etwas, ich weiß es nicht, aber sessions.save_path hat bei mir nicht funktioniert)

session.save_path = "/path/to/your/folder" 

funktioniert gut

6
Iburidu

Beachten Sie auch, dass session.save_path vor session_start() aufgerufen werden muss.

0

Mit Hilfe dieses Threads habe ich die folgenden Sitzungen zum Laufen gebracht. Ich verwende PHP in IIS.

Legen Sie den Sitzungsordner in der php.ini fest.

session.save_path = "C:/inetpub/temp/php_session"

(Ich bin mir noch nicht sicher, ob dieser Sitzungsordner die beste Methode für meine Umgebung ist. In Bezug auf die Sicherheit. Ich muss mehr darüber lesen.)

Das Festlegen des Sitzungspfads war nicht ausreichend. Anfangs hatte ich session_start () in eine Funktion eingefügt, in der ich meine Sitzungsvariablen festlegen musste, aber obwohl die Sitzungsdatei in meinem Pfad erstellt wurde (sess_d9eeeb305928f2f39a25f296773b09eb), ging der Wert $ _SESSION während eines Ajax-Posts in meinem PHP Seite. Jemand auf Stack\o hat gesagt, dass session_start () als erste Zeile gesetzt werden soll, also habe ich das versucht und mein Sitzungswert funktioniert. Ich habe nicht herausgefunden, wo ich es zerstören soll.

<?php 
session_start();
...
0
Greg Bologna

Erstellen Sie einen Ordner mit dem Namen session im C:\session.

Ändern Sie das Verzeichnis session.save_path(); in den neu erstellten Pfad: (C:\session) an einer beliebigen Stelle im Ordner tmp.

0