Probleme mit Safe-Mode
Aus schokokeks.org Wiki
Der safe_mode von PHP verhindert, dass ein Benutzer die Daten eines anderen Benutzers lesen kann.
Hinweis: Alternativ zu der hier genannten Lösung kann es sinnvoller sein, die PHP-Verarbeitung gleich auf »PHP als FastCGI« umzustellen. Dies können Sie über das Webinterface erledigen.
Problem
Wenn Dateien über ein PHP-Script auf den Server hochgeladen wurden, dann gehören diese dem Webserver (der unter einem eigenen Benutzer ausgeführt wird). Möchte ein Script, das z.b. dem Benutzer bernd gehört jetzt eine solche Datei nochmals bearbeiten (z.B. Bildbearbeitungen), dann tritt die safe_mode-Beschränkung in Kraft und der Zugriff wird aus Sicherheitsgründen verweigert.
Lösung
Damit das Script die Dateien wieder lesen darf, müssen diese wieder dem Benutzer selbst gehören. Da diese Besitzer-Änderung nur der Administrator machen kann, haben wir dafür ein Script geschrieben. Dieses erlaubt es jedem Benutzer die Dateien sich selbst zu schenken.
Die Benutzung funktioniert wie folgt:
- Wechseln ins das betreffende Verzeichnis
- Aufrufen des Scripts
cd /home/bernd/websites/foobar.com /usr/local/bin/chown-user-files.sh
Alternativ kann dem Script auch das Verzeichnis als Argument übergeben werden.
/usr/local/bin/chown-user-files.sh /home/bernd/websites/foobar.com
Einschränkung: Das Script bearbeitet (logischerweise) nur Dateien im jeweiligen Home-Verzeichnis eines Benutzers.

