We proberen de kwaliteit van onze kennisbank voortdurend te verbeteren.
Geef de informatie op deze pagina een waardering met de slider hierboven.
Php Session Start
Inhoud |
session_start: Failed to initialize storage module
Symptomen
- Uw site laat op willekeurige momenten onderstaande foutmelding zien:
Fatal error: session_start(): Failed to initialize storage module: user (path: /var/lib/php4)
- U gebruikt de standaard session_handler van PHP
Oorzaak
De oorzaak van dit probleem is niet duidelijk, maar het lijkt een bug in PHP te zijn. Bovenstaande foutmelding duidt er namelijk op dat er een custom session_handler gebruikt wordt, terwijl dit in de meeste gevallen niet zo is. Op de site van PHP is hier ook een bugreport voor aangemaakt, maar deze is meer dan een jaar oud, terwijl er weinig activiteit aan de kant van de PHP ontwikkelaars lijkt te zijn.
Oplossing
In PHP 5.3 zou dit probleem opgelost moeten zijn. Intussen is er een workaround, die in veel gevallen lijkt te werken. Hiertoe moet voor elke aanroep van session_start() eerst de session_handler weer handmatig teruggezet worden op de default.
U kunt hiervoor het beste een aparte functie maken waarin u dit doet:
function session_start_custom() { : ini_set("session.save_handler", "files"); : session_start(); }
Bovenstaande functie kunt u in een bestand zetten dat u weer include() in een ander bestand als u session_start wilt gebruiken. Als laatste stap dient u nu elke aanroep naar 'session_start()' te vervangen door 'session_start_custom()'.
Indien u ook last hebt van het probleen dat hier besproken wordt, horen we dat graag op support@byte.nl. Ook als de workaround werkt, of juist niet werkt, dan horen we dat graag!
Nog niemand heeft een waardering kenbaar gemaakt voor dit artikel