Ich möchte auf meinem Ubuntu (14.04) einen lokalen Webserver einrichten. Also habe ich die gesamte Software installiert, um einen LAMP-Server zu bekommen.
Das Problem ist, dass ich beim Erstellen meiner virtuellen Hosts etwas falsch mache. Ich wollte verschiedene Subdomains auf meinem Localhost erstellen. So zum Beispiel site1.localhost und site2.localhost.
In meinem /var/www/
Telefonbuch habe ich einen symbolischen Link "site1" angelegt, zu dem ich gehe /home/user/Workspaces/site1
.
In meiner Apache-Datei error.log wurde der folgende Fehler angezeigt.
[core:error] [pid 12679] [client 127.0.0.1:59006] AH00037: Symbolic link not allowed or link target not accessible: /var/www/site1
In meiner Apache-Konfiguration habe ich:
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
Ich denke also, dass mit den Berechtigungen der Ordner etwas nicht stimmt. Ich habe bei Google gesucht und ein paar Leute mit demselben Problem gefunden, aber alle Antworten, die dort angegeben wurden, haben nicht geklappt. Ich habe der www-Datengruppe und ähnlichen Dingen meinen eigenen Benutzernamen hinzugefügt.
So ls -la /var/www
kehrt zurück:
total 12
drwxrwsr-x 3 user www-data 4096 okt 13 19:08 .
drwxr-xr-x 14 root root 4096 okt 1 22:50 ..
drwxr-xr-x 2 root www-data 4096 okt 1 22:50 html
lrwxrwxrwx 1 root www-data 29 okt 13 19:08 site1 -> /home/user/Workspaces/site1/
und ls -la /home/juul/Workspaces/site1
kehrt zurück:
total 24
drwxrwxr-x 4 user www-data 4096 okt 13 18:21 .
drwxrwx--- 3 user user 4096 okt 13 17:31 ..
-rw-rw-r-- 1 user user 0 okt 13 18:21 index.html
drwxrwxr-x 4 user www-data 4096 okt 13 16:12 .metadata
drwxrwxr-x 5 user www-data 4096 okt 13 16:53 Project
Hoffentlich kann mir jemand dabei helfen :-)
quelle
Ich habe eine Standard-Apache-Installation am 14.04. Es gibt keine Dateien oder Verzeichnisse, in denen "www-data" angegeben ist. Hast du das alles selbst geändert? Es gibt eine Menge veralteter oder einfach falscher Informationen zum Einrichten von Webservern. Seien Sie also vorsichtig, wem Sie folgen, und machen Sie rückgängig, was nicht funktioniert.
Das heißt, "site1" sollte sich in Ihrem
html
Verzeichnis befinden und Ihnen gehören. Es muss nicht unbedingt ein Symlink sein. Sie können ein anderes Verzeichnis in der Konfigurationsdatei angeben. Etwas wie das:quelle
Lösung für: Die symbolische Verbindung nicht erlaubt oder Link - Ziel nicht erreichbar:
/var/www/html/mySymbolicLink
.Dies ist eindeutig ein Problem mit den Berechtigungen. Das Problem ist, dass der HTML-Code in Ihrem Home-Verzeichnis Ihrem Benutzer gehört und der Apache-Server von einem anderen Benutzer ausgeführt wird, sodass er nicht auf Ihr Home-Verzeichnis zugreifen kann.
Die Lösung wäre dann, den Benutzer, der Apache ausführt, zu Ihrer Gruppe hinzuzufügen, normalerweise derselbe wie Ihr Benutzername. Also habe ich es in meiner CentOS-Box gemacht als:
Fügen Sie den Benutzer apache zur Gruppe dev hinzu. Jetzt muss ich Ausführungsberechtigungen geben.
In
/home
:Dadurch wird meinem Ordner nur für die Mitglieder der Gruppe die Ausführungsberechtigung erteilt. Und das ist es. Sie müssen den Apache-Benutzer für alles ändern, was auf Ihrem Webserver ausgeführt wird. Ich glaube, für Ubuntu ist dies der Benutzer
www-data
.quelle