Ich habe die Ubuntu 12.04 Server Edition für meinen Server-PC installiert. Ich hatte Lampenserver installiert. Ich muss den var / www-Speicherort auf meinen sekundären Festplattenspeicherort ändern. Ich war so oft auf gedit / etc / apache2 / sites-available / default konfiguriert, hier ist mein Code
<VirtualHost *:80>
ServerAdmin webmaster@localhost
#DocumentRoot /var/www
DocumentRoot /media/myserver/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
#<Directory /var/www/>
<Directory /media/myserver/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
und auch verwendet
sudo chown -R var/www /media/myserver/
und
chmod -R 755 /media/myserver/
Trotzdem konnte ich meinen / media / myserver nicht verbinden und mein Browser zeigt die folgende Meldung an
Forbidden
You don't have permission to access / on this server.
Bitte sagen Sie jedem, wie er meinen Server in meinem var / www einbinden soll, danke im Voraus
Antworten:
Sie müssen das Dokumentenstammverzeichnis von Apache bearbeiten
apache2.conf
und000-default.conf
ändern.Der Apache-Server ist auf installiert.
var/www/html
Dies ist das Standard-Stammverzeichnis von Apache.Ändern Sie entweder das Stammverzeichnis von Apache oder verschieben Sie das Projekt in
/var/www/html
.Führen Sie Folgendes aus, um das Stammverzeichnis von Apache zu ändern:
Dann öffnen Sie die
000-default.conf
Datei mit dem Befehl:Bearbeiten Sie die
DocumentRoot
Option:Starten Sie dann den Apache-Server neu:
Wenn Sie
Forbidden You don't have permission to access / on this server
nach dem Ändern der Wurzel von Apache erhalten, gehen Sie folgendermaßen vorFinden Sie das gefundene
apache2.conf
in/etc/apache2
und öffnen Sie es mit:Benutze Ctrl+ Wund suche nach Directory (es sollte in Zeile 153 stehen)
Es sollte so aussehen
Ändern Sie es zu
Starten Sie Apache neu
Ich habe ein Skript erstellt, das Apache Root in einem einzigen Befehl ändert. Du findest es auf meinem Github .
quelle
<Directory /path/to/my/project>Options Indexes FollowSymLinks AllowOverride All Require all denied </Directory>
. In/etc/apache2/apahce2.conf
vor dem Neustart des Apache2-Dienstes.Vielleicht ein bisschen zu spät. Aber dennoch..
Sie sollten Ihre Verzeichnisberechtigungen in der apache.conf unter / etc / apache2 bearbeiten
Suche danach
und fügen Sie diesen Code darunter hinzu, der die Berechtigung zum Zugriff auf Ihr Verzeichnis gibt
quelle
Ändern Sie einfach den Dokumentenstamm in Ihrer aktivierten Konfiguration.
/etc/apache2/sites-enabled/000-default
und dann stellen Sie sicher, dass Sie Ihren Apache neu laden.Also versuch es mal damit:
Dann sollte die entsprechende Erlaubnis wie folgt gegeben werden:
quelle
Als schnelle Umgehung (sicher und schnell) können Sie den Einhängepunkt Ihres externen Festplattenlaufwerks auf das Standardstammverzeichnis (standardmäßig / var / www) setzen.
Das Zuweisen des Bereitstellungspunkts zu einem vorhandenen Verzeichnis ist sicher, aber der alte Inhalt kann nur erreicht werden, wenn Sie den Treiber abgemeldet haben.
Weitere Informationen zum Erstellen eines Montagepunkts finden Sie hier .
quelle
bindfs
wie hier beschrieben: askubuntu.com/a/1024308/566421sudo gedit etc/apache2/apache2.conf
Diese Optionen hinzufügen Indizes FollowSymLinks MultiViews AllowOverride Keine Reihenfolge zulassen, Zulassen von allen verweigernin der virtuellen Konfiguration:
/etc/apache2/sites-available/site.conf
sudo a2dissite 000-default.conf
quelle
Für diejenigen, die VirtualBox-Gastzusätze nutzen und erhalten
you don't have permission to access /on this server
trotz allem oben Erwähnten bekommen:Wenn Sie versuchen, den Apache-Dokumentenstammordner auf einen freigegebenen VirtualBox-Ordner festzulegen, und Sie haben alles oben ausprobiert, was nicht geholfen hat, gibt es einen weiteren Schritt.
Kurz gesagt, die Lösung besteht darin, der Gruppe 'vboxsf' den Benutzer 'www-data' hinzuzufügen:
Sie können den Besitzer und / oder die Gruppe des freigegebenen VirtualBox-Ordners nicht ändern, aber die obige Lösung hat bei mir gut funktioniert.
quelle
Ich stoße auch auf das gleiche Problem und könnte es lösen!
Was Sie tun müssen, ist
Sie ändern apache2.conf. Wechsle
/var/www/
zu deinem Weg:<Directory /your/path/> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory>
Ändern Sie 000-default.conf:
DocumentRoot /your/path/
Ändern Sie den Besitz der Verzeichnisse in Ihrem Dateimanager oder Terminal (z. B. sudo chown pi: path). Andernfalls erhalten Sie die Meldung "Sie haben keine Berechtigung zum Zugriff auf / auf diesem Server". Fehlermeldung.
Das ist alles.
quelle