A munkamenet vagy más néven Session ideje
Gyakori probléma, hogy az áruház alapbeállítása szerinti lejárati idő túl rövid és a munkamenetet megszakítja egy új beléptetés. A probléma súlyossága néha bosszantó, mivel termékváltozat felvétele közben – ami gyakran hosszabb ideig is eltart – adatvesztéssel járhat és kezdhetjük elölről az adatrögzítést.
Mit tehetünk ellene?
A munkamenet sajátossága
A session azért van, hogy az adatbevitelt feltételek közé szorítsuk. A biztonság megköveteli, hogy csak azok vihessenek be adatot, akiket a szerver oldalról munkamenetben azonosítottunk. Az össze-vissza feltűnő robotok és felhasználók rendesen megnehezítik a szerver dolgát, hogy kinek milyen jogosultsága is van az oldal hozzáférésekkel kapcsolatban. Éppen ezért egy munkamenet azonosítóval látja el a felhasználót az áruház, aminek lejárati ideje van.
Lejárati idő
A munkamenet időkorlátos, illetve mi határozhatjuk meg, hogy mennyi is legyen. Három alapeset van.
- Használjuk az alapbeállítást. Ez a leggyorsabb működést eredményezi, de nagyobb adatfelvételt nem végezhetünk biztonságosan
- Kikapcsoljuk a session futást, azaz a böngésző bezárásáig éltetjük munkamenetünket. Ez a létező leglassabb, de legmegbízhatóbb adatfelvételt eredményezi. Hátránya, hogy globális beállítás, ami az összes megnyitott munkamenetre érvényes lesz, így ha sok vásárló van az áruházban igencsak leterheli az SQL szervert, mert a session adatbázisban van tárolva. Tudnunk kell, hogy minden oldal váltás automatikusan a session adatok lekérdezésével is együtt jár. Használjuk inkább a sesssion fájlból opciót.
- Arany középút, amikor megpróbáljuk azt az értéket eltalálni, ami sebességre és biztonságra is a legmegfelelőbb.
A kalkuláció
Amennyiben nulla (0) vagy kisebb értéket (-1) választunk, akkor a szerver SESSION beállításokban a gc_maxlifetime értéke lesz a számítás alapja. Normál esetben 1800-14400 másodperc közé esik. Az értéket a PHP INFO oldalon kereshetjük ki.
Ha konkrét értéket adunk meg az áruház session beállításokban, akkor viszont percekben gondolkodjunk.
Változások érvénybe lépése
Ügyeljünk arra, hogy a böngésző indításával kezdődik a felhasználó azonosítása. Hiába változtatjuk a session idejét nem tapasztalunk változást, akkor indítsuk újra a böngészőt.
Cookie – sütik
Egy másik módszer a sütik létrehozása a felhasználói oldalon. A session adatok a sütikbe vándorolnak és nem terhelik a szervert, hanem a felhasználók böngészői szolgáltatják az azonosításhoz szükséges információkat.
A módszerről tudnunk kell, hogy a felhasználó böngészőjében engedélyezettnek kell lennie a süti használatának.
Session ID – munkamenet azonosító
A munkamenet kiosztása egy rag szám (session ID) munkamenet azonosítóval történik.
User Agent
Felhasználó tájékoztató, amely tartalmazza böngésző motorját, operációs rendszerét és nyelvét.