Ich habe ein PHP-Skript, das Bilder in einen Ordner hochlädt.
Ich habe diese Berechtigungen für den Upload-Ordner:
drwxrwxr-- 4 user user 4096 2010-06-02 16:20 temp_images
Sollten diese Berechtigungen nicht ausreichen, um Dateien in den Ordner hochzuladen?
Aber das funktioniert nicht.
Es funktioniert nur, wenn ich die Berechtigungen auf 777 setze.
„Benutzer“ wird zur WWW-Datengruppe hinzugefügt, weiterhin kein Erfolg.
Irgendwelche Ideen, warum?
Antwort1
Ihr Ordner gehört dem Benutzer und der GruppeBenutzer. Wenn Apache unter einem anderen Konto läuft, vielleichtwww-Datendann kann Apache dort nicht schreiben. Das Hinzufügen derBenutzerKonto an diewww-DatenGruppe würde bedeuten, dassBenutzerdarf in Ordner schreiben, die derwww-DatenGruppe besitzt und ist auf rw eingestellt. Wenn Sie möchten, dass Apache in den Ordner schreibt, den die GruppeBenutzerEigentümer des Apache-Dienstkontos muss Mitglied desBenutzerGruppe.
Antwort2
Wenn safe_mode eingeschaltet ist, sollte der Benutzer der Apache/PHP-Benutzer sein, es sei denn, Sie setzen safe_mode_gid auf on, wo die Prüfung auf die Gruppe und nicht auf den Benutzer erfolgt.
Antwort3
Der Besitzer des Verzeichnisses sollte die tatsächliche Benutzer-ID des Webservers sein. Versuchen Sie, den Besitzer zu ändern. Anschließend können Sie die Berechtigungen auf 700, 750 oder 755 festlegen.
chown www-Daten temp_images