Dies ist der restriktivste und sicherste Weg, den ich gefunden habe, wie hier für ein hypothetisches ~/my/web/root/
Verzeichnis für Ihren Webinhalt erläutert :
- Für jede übergeordnete Verzeichnis des Web - Stamm führenden (zB
~/my
, ~/my/web
, ~/my/web/root
):
chmod go-rwx DIR
(Niemand außer dem Eigentümer kann auf Inhalte zugreifen.)
chmod go+x DIR
(damit "Benutzer" einschließlich _www das Verzeichnis "eingeben" können)
sudo chgrp -R _www ~/my/web/root
(Alle Webinhalte sind jetzt Gruppe _www)
chmod -R go-rwx ~/my/web/root
(Niemand außer dem Eigentümer kann auf Webinhalte zugreifen.)
chmod -R g+rx ~/my/web/root
(Alle Webinhalte können jetzt von _www gelesen / ausgeführt / eingegeben werden.)
Bei allen anderen Lösungen bleiben Dateien für andere lokale Benutzer geöffnet (die Teil der Gruppe "Mitarbeiter" sind und offensichtlich zur Gruppe "o" / andere gehören). Diese Benutzer können dann DB-Konfigurationen, Quellcode oder andere vertrauliche Details in Ihren Webkonfigurationsdateien und -skripten frei durchsuchen und darauf zugreifen, wenn diese Teil Ihres Inhalts sind. Wenn dies für Sie kein Problem ist, wählen Sie auf jeden Fall eine der einfacheren Lösungen.
chmod go+rx DIR
auf der Verzeichnisebene / Users / username Lesezugriff gewähren, bevor ls aufhörte, einen Berechtigungsfehler auszulösen. Fragen, warum?chmod -R g+rwx ~/my/web/root
. Irgendwelche Einwände oder eine bessere Möglichkeit, dies zu tun @dkamins?Wenn dir das Terminal hier wirklich nicht gefällt, sagt dir die GUI-Methode, wie du Dkamins machst:
1) Gehen Sie zu Ihrem Benutzer- Ausgangsverzeichnis ( ludo gehört mir) und wählen Sie im Menü Datei im Inspektor die Option Informationen abrufen : cmdI
2) Fügen Sie durch alt/optionKlicken auf das [+] - Zeichen die _www- Gruppe hinzu und setzen Sie die Berechtigung auf schreibgeschützt :
3) Lassen Sie sich die Get Info Inspektor Ihres Benutzer Seiten Ordner und reproduce Schritt 2 dann von der Gang Aktion Untermenü wählen beiliegender Elemente anwenden ... :
Voilà 3 Schritte und die GUI nur so ...
quelle
ALT + [+]
Trick zu wissen . Vielen Dank.Ich weiß, dass dies ein alter Beitrag ist, aber für alle, die ein Upgrade auf Mountain Lion (10.8) durchführen und ähnliche Probleme haben, hat das Hinzufügen
FollowSymLinks
zu Ihrer .conf-Datei {Benutzername} (in / etc / apache2 / users /) den Trick für mich getan. Die Datei sieht also so aus:quelle
2 Monate alter Thread, aber besser spät als nie! Unter 10.6 habe ich meinen Webserver-Dokumentenordner auf Folgendes eingestellt:
_www ist der Benutzer, der Apache unter Mac OS X ausführt. Anschließend habe ich eine ACL hinzugefügt, um der Administratorgruppe vollständige Berechtigungen zu gewähren. Auf diese Weise kann ich weiterhin Änderungen an meinem Administrator vornehmen, ohne mich als Root authentifizieren zu müssen. Wenn ich dem Webserver erlauben möchte, in einen Ordner zu schreiben, kann ich einfach auf 775 chmodieren, wobei alle anderen als root: _www nur Lese- / Ausführungsberechtigungen haben (mit Ausnahme aller von mir angewendeten ACLs).
quelle
Auf meinem 10.6-System:
quelle
Der Benutzereigentümer ist für mich der Administrator und die Gruppe ist _www und arbeitet mit Berechtigungen, die für dir und für Dateien 664 auf 775 festgelegt sind
quelle
Catalina Update / Desktop-Berechtigungen
Ich stoße einmal im Jahr auf macOS darauf. Normalerweise verwende ich Apache2 zum Hosten eines Ordners auf meinem Desktop.
Wenn Sie versuchen, Zugriff auf die zu gewähren
desktop
Ordner zu gewähren, müssen Sie diesen Anweisungen folgen, damit httpd auf alle Ordner zugreifen kann: https://apple.stackexchange.com/a/373139/353465quelle
Öffnen Sie zuerst das Terminal und wechseln Sie dann in das Verzeichnis des Webservers
und geben Sie dann das und was Sie tun werden , ist , dass Sie geben
read
undwrite
ErlaubnisDas wird sicher funktionieren!
quelle