ich verwende Ubuntu 14.04 und habe ein Problem mit der Apache-Konfiguration:
Ich habe einen Symlink in /var/www/html
(dem Apache DocRoot seit Ubuntu 14.04) erstellt./home/me/myWebDirectory
cd /var/www/html
ln -s /home/me/myWebDirectory myWebDirectory
sondern localhost/myWebDirectory
macht eine
403-Berechtigung verweigert
und gibt tatsächlich sudo -u www-data ls /home/me/myWebDirectory
auch eine verweigerte Berechtigung zurück
apache2.conf hatte folgende Anweisung:
<Directory /var/www>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
ich habe es geändert für<Directory /var/www/html>
aber kein Ergebnis.
me
ich habe versucht, den Benutzer www-data group
mit dem folgenden Befehl hinzuzufügen , aber das hat auch nicht geholfen:sudo usermod -a -G www-data me
was vermisse ich??
BEARBEITEN: ich habe die Gruppe /home/me/myWebDirectory
in www-Daten mit RX-Rechten geändert, aber auch ohne Erfolg ...
Anmerkung 1:ich weiß, dass es eine andere Möglichkeit gibt, dies zu tun, indem ich das Apache-Mod_Userdir aktiviere, und das werde ich wahrscheinlich als Nächstes tun. Aber zuerst möchte ich verstehen, wie diese „einfache“ Lösung funktioniert …
Anmerkung 2:ich weiß auch, dass ich einen virtuellen Host usw. erstellen könnte, aber ich möchte zunächst verstehen, warum diese einfache (erste und vorübergehende) Lösung nicht funktioniert …
Antwort1
Was die Berechtigungen angeht, haben Sie es meiner Meinung nach falsch verstanden. Das Hinzufügen eines Benutzers me
hilft www-data
nicht, Sie sollten den Apache-Benutzer zur me
Benutzergruppe hinzufügen.
Auch wenn Sie nur die Gruppenrechte von geändert haben /home/me/myWebDirectory
, reicht das nicht aus, wenn /home/me
für die Gruppe kein Zugriff möglich ist www-data
. Stellen Sie sicher, dass Benutzer mit www-data
der Gruppe das Verzeichnis selbst aufrufen können /home/me
.
Für einen detaillierteren Ansatz schauen Sie sich an:POSIX-ACL.
Antwort2
apache2 muss vom Anfang des Verzeichnispfads an lesen können
sudo chgrp www-data /home/username
füge die Gruppe „WWW-Daten“ zum Benutzernamen hinzu
sudo useradd -g www-data username
und ab- und anmelden... hat bei mir geklappt
Wenn es immer noch nicht funktioniert, verwenden Sie
sudo chgrp www-data /home/username
versuch mal, dich ab- und wieder anzumelden... sollte klappen