Hallo zusammen!
Ich dachte ich hätte mit dem Safe Mode bereits alles hinter mir, was einem an Fehlern so passieren kann. Doch dann folgte dies hier:
PHP-Datei A kann PHP-Datei B includen (mit include()), wenn A ganz "normal" aufgerufen wird: Über die Adressleiste, einen Link, ein Formular... völlig egal. Nun wird A allerdings per AJAX-Request aus einem Skript C aufgerufen, und plötzlich meldet PHP einen SAFE MODE Fehler, der das Includen von B in A verbietet.
Nochmal zur Übersicht:
Funktioniert:
A > include() > B
Funktioniert nicht:
C > AJAX-Aufruf > A > include() > B
Könnte es sein, dass C eine andere uid wie A besitzt? Und da C gerade ausgeführt wird, also der aktuelle "Besitzer" ist, kann kein quasi parallel ausgeführtes Skript im gleichen Kontext (aber mit anderer uid) auf B zugreifen? Ich dachte bisher, dass es sich beim Benutzer um den Webserver, den FTP-Server handelt, und nicht um einzelne Skripte. Bleibt noch die Möglichkeit, dass es an der Art des Aufrufs von A liegt.
Es muss irgend eine Lösung geben. Ansonsten müsste man davon ausgehen, dass AJAX mit dem Safe Mode nur unter funktionalen Einschränkungen verwendet werden kann.