Warum benötigt Apache + PHP Ausführungsberechtigungen, um in eine Datei zu schreiben?

8

Es hat mich immer verblüfft, dass Apache + PHP nicht schreiben kann, wenn ein Ordner Lese- und Schreibrechte hat. Sie müssen die Ausführung von Apache-Berechtigungen beenden, um eine Datei in diesem Ordner schreiben zu können. Warum?

Zum Beispiel kann mit dem Befehl chmod 664 (wo die Erstellungsgruppe den Apache-Benutzer enthält) der Apache keine temporäre Cachedatei in diesen Ordner schreiben:

%Vor%

während mit chmod 774 Apache kann eine neue Datei in den Ordner schreiben:

%Vor%     
tomwoods 29.06.2012, 17:18
quelle

2 Antworten

9

Sie benötigen eine Ausführungsberechtigung, um konzeptuell ein Verzeichnis einzugeben (cd hinein, listet Dateien innerhalb usw. auf). Es wäre klarer gewesen, wenn sie dieses Bit etwas anderes für Verzeichnisse genannt hätten. Dieser Artikel empfiehlt, es als "Such" -Ereignis für Verzeichnisse zu betrachten.

    
Matthew Flaschen 29.06.2012, 17:20
quelle
2

Wenn diese Berechtigung für ein Verzeichnis gesetzt ist, gibt es die Möglichkeit, auf metainfo zuzugreifen und auf Inhalte zuzugreifen. Aus diesem Grund müssen Sie execute ausführen.

    
PoX 29.06.2012 17:23
quelle

Tags und Links