ugrás a tartalomhoz

Session a Windows szerveren megy, Linuxon nem

Anonymous · 2006. Dec. 9. (Szo), 17.56
Sziasztok!

Van egy erdekes problemam, de nem talalom ra a megoldast.

Keszitek egy weblapot, amiben van session kezeles.
A weblap munkapeldanya egy Windows XP, Apache2, PHP 5.0.4
alatt keszul.
A vegleges helye egy Debian linux, Apache2, PHP 4.3.10-15
alatt megy.

A munkapeldany tokeletesen mukodik, ha belepek a felhasznalonevemmel,
visszakapom a session adatokat, ha rakattintok egy linkre, ugyanugy
visszakapom az elo session adatokat.

A linux-os webszerveren ezzel szemben belepek, megkapom a session
adatokat, de amint rakattintok egy linkre, azonnal eldobja a session-t,
magyarul olyan, mintha logout lett volna.

Mar osszehasonlitottam a ket webszerver es PHP konfigomat, es
megegyeznek. A logokban semmilyen hibat nem latni.

Van valakinek ötlete, hogy mi lehet a gond? :(

Köszi előre is!

Harmati Róbert
 
1

Session ID

Darkfish · 2006. Dec. 9. (Szo), 18.25
Több lehetőség lehet attól függően, hogy hogyan adódik át a SESSION ID. Ha cookie-val, akkor lehet hogy az egyik domainről engedélyezett, a másikról meg nem. Az a tuti ha linken közvetlenül átadod. (Bár nem túl szép.)
2

nem az oprendszer lesz a gond

rrd · 2006. Dec. 10. (V), 18.43
valami más lesz nálad a bibi. Pl eltérő PHP verziók, vagy mégis van valami ini különbség a két rendszer között a session kezelés terén, vagy pedig a használt session tárolási eljárás (pl cookie) nem engedélyezett a külsö szerveren. Esetleg nem ugyanaz a file verió van fenn mint a helyi szerveren és a linkre kattintásra meghívandó oldalon kimaradt a session_start();
3

session.auto_start

Anonymous · 2006. Dec. 10. (V), 19.45
a windows alatt valószínűleg be van kapcsolva, a linuxos szerveren pedig nem, és nem használod a session_start() függvényt.
a megoldás: windows alatt a php.ini-ben állítsd a session.auto_startot off értékre és használd inkább a session_start() függvényt minden script elején.

(az belépés utáni első oldalon még működésnek pedig az a titka, hogy belépés után valószínűleg nem használsz header függvényt, és még a lekérésen belül dolgozod fel az űrlapról küldött adatokat, azaz létrehozod a $_SESSION tömböt (ha frissíted a lapot valószínűleg közli is veled, hogy post metódust használsz), ha linkre kattintasz - és ezáltal új lekérést indítasz -, akkor viszont már nem lesz meg ez a tömb.)

gex
4

Köszi! :)

Anonymous · 2006. Dec. 12. (K), 17.35
Köszönöm mindenkinek a segítő szándékát, gex tipe bevált és most már megy is gond nélkül. :)

Köszi mégegyszer!

H. R.