• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Apache2 DocumentRoot auf NFS-Laufwerk ...

roemi

Advanced Hacker
hiho,

ich habe zwei suse9.2 (ein arbeits- und daten-pc und ein bau-, bastel-, test-pc)
auf dem daten-pc ist ein nfs-server am laufen und home ist darüber freigegeben.
auf dem bastel-pc ist ein nfs-client am laufen und das home als /pc2 gemountet.
auf dem bastel-pc läuft apache2, php4 und mysql.
auf beiden rechner gibt es den user michael mit gleichen rechten und gleicher uid.
der inhalt der exports ist auch ok. der normale zugriff funzt.
mein ganzes php-gedöns liegt unter public-html im besagten home.
nun möchte ich mit meinem apache2 auf /pc2 zugreifen.
einfach nur den documentroot ändern endet mit

Zugriff verweigert!

Der Zugriff auf das angeforderte Objekt ist nicht möglich. Entweder kann es vom Server nicht gelesen werden oder es ist zugriffsgeschützt.

Sofern Sie dies für eine Fehlfunktion des Servers halten, informieren Sie bitte den Webmaster hierüber.
Error 403

auch der versuch die httpd.conf mit einem virtualhost zu beglücken

<VirtualHost *:80>
ServerName 192.168.1.102
DocumentRoot /home/michael/public_html
</VirtualHost>
brachte keinen erfolg bzw. nur bereits o.g. fehlermeldung.
im gegenteil, der eintrag wird tapfer ignoriert.
obwohl die ip auf den daten-pc verweist und der pfad ebenfalls korrekt ist.

irgendwo ist der wurm drin und/oder ich habe was überlesen, und/oder nicht verstanden und/oder liege völlig falsch.

bin für jede idee dankbar
 
A

Anonymous

Gast
Hallo roemi,

das Ändern des DocumentRoot reicht nicht. In der httpd.conf gibt es folgenden Eintrag.:

<Directory />
Options None
AllowOverride None
Order deny,allow
Deny from all
</Directory>

Diese Regel sorgt dafür das erstmal jeder Zugriff auf den Verzeichnisbaum grundsätzlich verboten ist.

Anschließend werden in der "default-server.conf", die über eine Include-Anweisung in die httpd.conf eingebunden ist, die Freigabeberechtigungen gesetzt. Für das Standard-DocumentRoot sieht das folgendermaßen aus.:

<Directory /srv/www/htdocs>
Order allow,deny
Allow from all
</Directory>

Damit ist der Pfad "/srv/www/htdocs" von der obigen Verbotsregel ausgenommen. Wenn du nun das DocumentRoot auf einen anderen Pfad setzt, mußt du natürlich auch diese Regeln anpassen, oder du kommentierst die "Verbotsregel" zum Testen aus. Ansonsten wird dir der Zugriff verweigert.
 
OP
roemi

roemi

Advanced Hacker
sodele nochmals zur ergänzung:

##DocumentRoot "/home/michael/public_html" (geändert)
DocumentRoot "/pc2/public_html"
#
# Configure the DocumentRoot
#
##<Directory "/srv/www/htdocs"> (geändert)
<Directory "/pc2/public_html">
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes F....
ich habe NUR diese zwei angaben ändern müssen.
etwas verwirrend war, das ich den "Directory"-pfad ursprünglich nicht anpassen musste.

aso, den virtualhost habe ich wieder rausgeworfen.

römi
 
Oben