Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

PHP verliert Inhald der SESSION nach Seitenwechsel, Cookie aber OK

Frage Entwicklung PHP

Mitglied: ChrisFah

ChrisFah (Level 1) - Jetzt verbinden

29.03.2013 um 23:50 Uhr, 4282 Aufrufe, 4 Kommentare

Seltsames Problem mit dem inhalt der Globalen $_SESSION in PHP bei einem VServer von HostEurope: nach einem Seitenwechsel ist $_SESSIOn leer, obwohl die Sessin korrekt gesartet wird und per Cookie korrekt gespeichert wird.

Hallo,
ich habe bei HostEurope einen VServer unter Centos5 mit Plesk 9.5.

Bei einer neuen Domain, die zum Login einige Daten in $_SESSION schreibt, habe ich entdeckt, daß auf diesem VServer (auf allen Domains dieses VServers gleich) bei einem Seitenwechsel der Inhalt von $_SESSION verloren geht. Der Sessionname sowie die Session-id werden korrekt in einem Cookie gespeichert und übertragen.
Auf einem zweiten VServer unter Centos6 mit Pesk klappt das jedoch perfekt.

Ein kleines Testscript , das einen Wert in $_SESSION schreibt und dann per Klick auf einen Link sich selbst wieder aufruft, sollte das prüfen, und bestätigt meine Feststellung, daß bei jedem Seitenwechsel $_SESSION wieder jungfäulich ist.

Leider weiss ich nicht, wo ich da ansetzen soll, und auch der Support von HE lässt seit zwei Tagen auf sich warten....

Wer hat Hilfe ???

Lg, Chris

PS: Anbei die session settings lt phpinfo

Directive Local Value Master Value
session.auto_start Off Off
session.bug_compat_42 Off Off
session.bug_compat_warn On On
session.cache_expire 180 180
session.cache_limiter nocache nocache
session.cookie_domain no value no value
session.cookie_lifetime 0 0
session.cookie_path / /
session.cookie_secure Off Off
session.entropy_file no value no value
session.entropy_length 0 0
session.gc_divisor 1000 1000
session.gc_maxlifetime 1440 1440
session.gc_probability 1 1
session.hash_bits_per_character 5 5
session.hash_function 0 0
session.name PHPSESSID PHPSESSID
session.referer_check no value no value
session.save_handler files files
session.save_path /var/lib/php/session /var/lib/php/session
session.serialize_handler php php
session.use_cookies On On
session.use_only_cookies Off Off
session.use_trans_sid 0 0
Mitglied: flow.ryan
30.03.2013 um 08:43 Uhr
Hi,

Klngt zunächst sehr seltsam. Magst du einmakndeinen testcode hier posten?

Gruß Florian
Bitte warten ..
Mitglied: ChrisFah
31.03.2013, aktualisiert um 20:58 Uhr
Hallo!

Anbei mein Code:
01.
  
02.
<?php 
03.
session_start(); 
04.
 
05.
if ($_SERVER['HTTP_REFERER']) { 
06.
	if ($_SESSION['test']) { 
07.
		echo '$_SESSION["test"] ist gesetzt: Inhalt: '.$_SESSION['test'].'<br /><br />'
08.
	} else
09.
		echo '$_SESSION ist leer. <br /><br />'
10.
11.
12.
echo '===========================<br /><br />'
13.
echo '$_SESSION wird neu jetzt beschrieben:<br />'
14.
 
15.
// Hier wird $_SESSION[test] gesetzt 
16.
$_SESSION['test'] = 'Ich bin da'
17.
 
18.
echo 'Neu belegter Wert in SESSION = '. $_SESSION['test']; 
19.
echo '<br /><br />'
20.
 
21.
// Link auf sich selbst 
22.
echo '<a href="test.php">Seite neu laden</a>'
23.
echo '<br /><br />'
24.
?>


Das seltsame ist, daß dieses verhalten auf allen Domains dieses Vservers ist. Auf meinem zweiten Vserver klappt alles prima.

Lg, Chris
Bitte warten ..
Mitglied: Arano
03.04.2013 um 06:42 Uhr
Moin moin,

mal ganz blöde.
Und wenn du Zeile 5+11 weg lässt ?

Wenn die Session-ID im Cookie existiert, kannst du die Session dann manuell nachladen !?


~Arano
Bitte warten ..
Mitglied: ChrisFah
03.04.2013 um 19:39 Uhr
Hallo,
zeile 5 + 11 ist nur dazu da, daß die Überprüfung beim ersten Aufruf des Scripts nicht stattfindet, da ja die Session erst beim ersten Aufruf beschrieben wird. Bei jedem weiteren Aufruf des Scripts durch Klick auf den Link, also wenn ein Referer existiert, wird dann auch die Session gecheckt.

ABER:
HE HAT DAS PROBLEM GELÖST !!!
Lt Techniker war ich schuld, da ich den Apachen als fast-cgi ausführen lasse, und dann dieser einen anderen Nutzer hat, der nicht ins php/session Verzeichnis schreiben kann...

Original:"wir konnten feststellen, dass Sie Apache unter Fast-CGI nutzen. Dies hat zur Folge, dass die Sessions unter einem anderen Nutzer geschrieben werden und konnten deshalb nicht in dem Ordner /var/lib/php/sessions angelegt werden konnten.
Wir haben nun die Dateirechte des Ordners /var/lib/php/sessions angepasst, sodass diese nun erstellt werden können."

Also, Problem gelöst.

Danke fürs Interesse.
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

(1)

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (14)

Frage von JayyyH zum Thema Switche und Hubs ...

DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...

Windows Server
Mailserver auf Windows Server 2012 (9)

Frage von StefanT81 zum Thema Windows Server ...