Hello,
Hi,
das Problem daran ist dann nur wieder der Safe Mode der dann dann Fehlermeldungen um sich wirft das der Apache User die Skripte nicht ausführen darf.
Ich versuch nochmal knapp zu umreißen, wo das Problem liegt:
Scripte dürfen immer ausgeführt werden, wenn der WebserverUser sie lesen darf. Dafür stehen alle drei Rechtegruppen: Owner, Gruppe, Others zur Verfügung, das herzustellen.
Die Scripte dürfen auf Verzeichnisse und Dateien zugreifen, wenn
Verzeichnis/Datei denselben Owner haben, wie das Script
oder
Das Verzeichnis/die Datei in einem Verzeichnis mit demselben Owner wie der des Scriptes liegen
Bei einer "Normaleinrichtung" passiert folgendes:
Die Document-Root gehört dem FTP-User
Die hochgeladenen Scripte gehören dem FTP-User
Wird nun mittels PHP-Script eine Datei angelegt, gehört die dem WebserverUser
Da die Datei aber in einem Verzeichnis liegt, dass demsleben Owner wie das Script gehört, darf das Script noch damit arbeiten.
Wenn man nun in diesem Unterverzeichnis Dateien mittels PHP erzeugt, gehören die dem WebserverUser.
Es gehören nun also weder die Datei noch das Verzeichnis, in dem sie liegt demselben Owner wie dem vom Script. Das Script hat einen anderen Owner, als die Datei und ihr Verzeichnis. Nun kneift Dich der Safemode.
Dasselbe gilt natürlich auch für die hochgeladenen und mittels PHP-Script verschobenen Dateien. Entweder Du legst die Unterverzeichnisse alle mittels FTP an, damit sie dieselben Owner haben, wie die Scripte, oder aber du wendest einen Trick an:
Nach dem Hochladen der Scripte kopierst Du diese mittels ebenfalls hochgeladenem (und auth-geschütztem) Script auf dem Webserver. Nun gehören die Scripte demselben User, wie die hochgeladenen Dateien und alles wird gut.
Per FTP hannst Du auf die mittels PHP-Script hochgeladenen Dateien dann allerdings meistens nicht mehr zugreifen. Das musst Du dann mittels PHP-Script und HTTP machen.
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau
