[TYPO3-UG Dutch] Probleem met "safe mode restriction" in backend

H. Hahn h.hahn at hahn-informatica.nl
Mon Aug 11 21:22:25 CEST 2008


De laatste dagen was ik gewend (wat een luxe!) dat er binnen no time al 
antwoorden kwamen. Ditmaal was zeker iedereen op vacantie, of zo.
Ik heb de vraag ook maar aan de Engelse lijst voorgelegd. Daar kwamen 
diverse pogingen tot antwoorden uit. Maar één tipgever was raak: hij had 
de ervaring dat het te maken had met (gebrek aan) toegangsrechten tot de 
map die de session handler van PHP gebruikt. Als die niet expliciet is 
gedefinieerd, gebruikt PHP (althans versie 5.2.6) daar '/var/tmp' voor, 
en dat gaat dus niet in safe mode.
Ik heb nu in php.ini een regel met

    session.save_path = "//pre_root//sess_save"

 opgenomen, waarbij "//pre_root/" hier staat voor de map (en het pad 
erheen) naar de parentmap van zowel htdocs als cgi-bin. De hiervoor 
aangemaakte map 'sess_save' zit dus op hetzelfde boom-niveau als htdocs 
en cgi-bin en is dus niet via HTTP bereikbaar.
Na deze wijziging in php.ini rapporteerde phpinfo inderdaad dat 
session.save_path nu deze waarde heeft.
En..., het BE werkt weer!
Probleem opgelost.

H. Hahn

Maarten Mandemaker schreef:
> In de install tool kun je op de basis pagina zien welke functies er in 
> PHP zijn uitgeschakeld. Misschien kun je deze even posten, dat helpt 
> wellicht een aantal mensen.
>
> Persoonlijk heb ik geen idee voor een oplossing.
>
> Grt. Maarten Mandemaker
>
> H. Hahn schreef:
>> Bij een website van een klant treedt vrij plotseling het volgende op. 
>> In het front end lijkt alles okay te zijn. Maar als ik probeer in het 
>> backend in te loggen, krijg ik de PHP-meldingen:
>>
>>    "Warning: session_start() [function.session-start]: SAFE MODE
>>    Restriction in effect. The script whose uid is 1152609 is not
>>    allowed to access /var/tmp/ owned by uid 0 in
>>    /usr/local/WWW/A/.5c2/p/pels4/htdocs/cheider2007/typo3/index.php
>>    on line 202"
>>
>> en
>>
>>    "Fatal error: session_start() [<a
>>    href='function.session-start'>function.session-start</a>]:
>>    Failed to initialize storage module: files (path: ) in
>>    /usr/local/WWW/A/.5c2/p/pels4/htdocs/cheider2007/typo3/index.php
>>    on line 202"
>>
>> De website draaide oorspronkelijk op Typo3 3.8.1 en was al een tijdje 
>> geleden ge-update naar 4.0.5. Een maand of zo geleden heb ik getracht 
>> hem te updaten naar T3 4.2.1, maar het bleek dat dese T3-versie 
>> minimaal PHP5.2 vereiste. De site draaide toen nog op PHP4.nogwat. De 
>> ISP (Xs4all) zegt op zijn eigen website dat je zonder meer naar PHP5 
>> kunt gaan door alle extensies ".php" te wijzigen in ".php5". Dat is 
>> voor Typo3 natuurlijk niet reëel, want dan moet je ook alle(!) 
>> scripts nalopen en de verwijzingen naar andere scripts aanpassen.
>>
>> De helpdesk van Xs4all (zoals bekend zeer moeilijk bereikbaar, maar 
>> als je ze eenmaal aan de lijn hebt, zijn ze zeer vriendelijk en 
>> behulpzaam!) adviseerde me een trucje in .htaccess, waarmee je de 
>> server dwingt om PHP5 te nemen ipv. PHP4. Dat werkte prima. Maar al 
>> gauw bleek dat dat bij hen PHP 5.0.5 of zo was. T3 4.2 werkte daar 
>> dus ook niet op.
>>
>> Ik heb toen de helpdesk gevraagd of ze niet PHP 5.2 of hoger 
>> beschikbaar konden stellen. Ik zei ook nog dat ze het risico lopen 
>> alle Typo3-klanten kwijt te raken als ze dat niet doen. De reactie 
>> was dat ze zo'n upgrade "uiteraard niet zomaar even kunnen doen". Wat 
>> natuurlijk ook wel logisch is. Xs4all kennend dacht ik al blij te 
>> kunnen zijn als ze het over een half jaar of zo rond hebben.
>>
>> Toen ik enkele dagen geleden dit bericht wilde gaan schrijven, keek 
>> ik nog even welke subversie van PHP 5 het ook weer precies was. Tot 
>> mijn grote verbazing zag ik dat ze inmiddels al op PHP 5.2.6 zitten! 
>> Dus genoemde foutmelding schreef ik voorlopig maar even daaraan toe, 
>> en dat bericht dat ik aan het schrijven was, heb ik maar weggegooid.
>>
>> Vanmiddag heb ik de website naar Typo3 4.2.1 overgezet. Dat verliep 
>> prima. Mijn hoop dat genoemd safe-mode-probleem daarmee over zou 
>> zijn, bleek echter niet gegrond. Deze fout treedt nog steeds op!
>>
>> Volledigheidshalve nog dit. Toen ik destijds aan deze website begon, 
>> zag ik tot mijn verbazing dat safe mode NIET aan stond. Een van de 
>> eerste dingen die ik deed, was dan ook in cgi-bin een eigen php.ini 
>> aanmaken met onder meer safe mode aangezet. Phpinfo bevestigde dat 
>> dat inderdaad gelukt was.
>> Ter controle heb ik vanmiddag mijn "eigen" safe-mode in cgi-bin even 
>> "uitgecommentaard". In phpinfo bleek hij toen inderdaad ook uit te 
>> staan. Xs4all heeft dus blijkbaar niet een of andere 
>> alles-overrulende en nog strengere safe-mode-instelling die mij 
>> verbiedt safe mode te wijzigen en die genoemde foutmelding zou kunnen 
>> veroorzaken.
>>
>> VRAAG: Wat kan de oorzaak van deze fout zijn, en wat doe ik eraan? 
>> Voor alle zekerheid: ik heb goede redenen om de website verder in 
>> safe te willen laten draaien!
>>
>> Graag advies!
>> Ir. H. Hahn
>


More information about the TYPO3-UG-dutch mailing list