phpbar.de logo

Mailinglisten-Archive

[php] Site funktioniert nach Umstellung auf Sessions nicht mehr (Requests erreichen den Server nicht)

[php] Site funktioniert nach Umstellung auf Sessions nicht mehr (Requests erreichen den Server nicht)

Oliver Kurlvink php_(at)_phpcenter.de
16 Feb 2002 12:30:06 +0100


Hallo,

ich habe hier ein merkwürdiges problem mit sessions. ich habe ein
kleines chat-system, bei dem bislang usernamen und encryptetes passwort
per get-parameter an der url verteilt werden, was natürlich nicht völlig
sicher ist. also soll das ganze auf sessions umgestellt werden. dazu
habe ich folgendes gemacht:

- jede seite die die userdaten verwenden soll enthält ein
session_start().
- die seite die den user einloggt setzt die variablen für user und
passwort und registriert danach die beiden variablen in der session
- jede seite die den user auf eine andere adresse schickt oder frames
aufbaut enthält nicht mehr die angabe für user und pw in get-form

das funktioniert soweit recht gut. der cookie wird gesetzt, die
sessiondatei nach /tmp geschrieben und die frames werden aufgebaut. die
seiten innerhalb der frames verwenden folglich brav die
session-variablen.

sobald allerdings ein posting abgeschickt wird oder ein link angeklickt
wird hängen entweder der browser oder der server. in opera sieht es so
aus, als würden manche dateien (nicht reproduzierbar) gar nicht erst
beim server angefragt werden. ich klicke auf einen link der das
komplette frameset neu aufbaut und erhalt als ergebnis die
frameset-definition nebst 2 gefüllten frames. laut apache-access-logfile
werden die anderen dateien erst angefragt, nachdem ich das laden im
browser abgebrochen habe. netscape 4 macht es ähnlich: auch dort kommen
die anfragen nicht zum server durch oder nicht beim browser an. im
gegensatz zu opera schafft netscape allerdings nicht einmal den
erstaufruf der seite, somit zwar ein login nebst setzen des cookies und
starten der session, aber kein aufrufen der seiten innerhalb der frames.

verwendet wird php4.1.1 unter freebsd mit aktuellem apache. die
konfiguration von php ist nur gering abgeändert, so ist die laufzeit für
sessions auf 14 stunden eingestellt.

dazu noch eine weitere frage: user können im chat vier stunden away
sein, also maximal vier stunden ohne aktion im chat verbringen. ich
möchte nun die session-files nach etwas über vier stunden löschen. kann
ich dafür die gültigkeit auf vier stunden setzen und php löscht dann die
session-files vier stunden nach dem letzten zugriff auf dieses file oder
zählt php ab der erstellung der session, so dass ich einen weitaus
höheren wert eintragen muss?

server ist der lokale rechner, so dass netzprobleme ausscheiden.

für ein paar tipps wäre ich sehr dankbar, da ich mehr als überfragt bin.
die beispiele von devshed.com (ohne frames allerdings) funktionierten
problemlos.


php::bar PHP Wiki   -   Listenarchive