Apache Documet Root ändern

robi

Member
Hallo Leute,

ich benutze das Openbsd 3.5 mit Apache 1.3.29. Es sind zwei Festplatten im System vorhanden. Die erste [wd0] beheimatet das System und die zweite [wd1] soll Allgemeine Daten, die in einem Index Listening von Apache dargestellt werden, aufnehmen.

Apache läuft wunderbar mit den vordefinierten Einstellungen und gibt die Verzeichnisse die standardmäßig unter /var/www/htdocs [wd0] eingestellt sind wieder.

Nun möchte ich aber, das die ganzen Dokumente auf der Platte [wd1] liegen, weil auf dieser mehr Platz ist. Hier habe ich also das DocumentRoot von

DocumentRoot "var/www/htdocs"
auf
DocumentRoot "pub/ftp/public" [/pub ist auf wd1 eingehängt]

geändert.

Leider bekomme ich einen 404 Fehler zurück. Woran kann das liegen?

Hier die {wie ich hoffe } relevanten Auschnitte aus /var/www/conf/httpd.conf

Das / Directory schaut so aus:

<Directory />
Options Indexes SymLinksIfOwnerMatch
AllowOverride None
</Directory>

Das /pub/ftp/public Directory schaut so aus:



<Directory /pub/ftp/public>
#//altes Verzeichnis Anfang
#<Directory "/var/www/htdocs">
#//altes Verzeichnis Ende

Options Indexes SymLinksIfOwnerMatch
AllowOverride None
Order allow,deny
Allow from all

</Directory>

Die Rechte sind um Fehler auszuschließen für die Verzeichnisse /pub/ftp/public und /var/www auf 0777 gesetzt worden.

/pub/ftp/public haben die gleichen Inhaber [Eigentümer, Gruppe] wie /var/www/htdocs


Danke vielmals für eure Zeit und vielleicht könnt ihr mir weiterhelfen

LG

Robert



PS: apachectl configtest = OK
 
Sorry das war ein Copy and Paste Fehler es sieht so aus:

DocumentRoot "/var/www/htdocs"
auf
DocumentRoot "/pub/ftp/public" [/pub ist auf wd1 eingehängt]


Leider bekomme ich einen 404 Fehler zurück. Woran kann das liegen?

Das / Directory schaut so aus:

<Directory />
Options Indexes SymLinksIfOwnerMatch
AllowOverride None
</Directory>

Das /pub/ftp/public Directory schaut so aus:



<Directory "/pub/ftp/public">
#//altes Verzeichnis Anfang
#<Directory "/var/www/htdocs">
#//altes Verzeichnis Ende

Options Indexes SymLinksIfOwnerMatch
AllowOverride None
Order allow,deny
Allow from all

</Directory>
 
Hm, ja ich Apache neu gestartet... Sagt eigentlich das er läuft....
Ich glaube es liegt an der chroot Umgebung...
Die Variable Server Root ist:

ServerRoot=/var/www

Hm dann kann er ja eigentlich /pub/ftp/public gar nicht sehen, oder? denn er interpretiert das ganze doch als /var/www/pub/ftp/public.... oder?

ich werd mal folgendes versuchen....

Das Server Root als /pub/ftp/lpublic eingeben und die /conf und die /htdocs und die /manual in das Verzeichniss kopieren....

wenn das nicht hilft dann werd ich wohl das Security Hole aufmachen müssen und httpd mit dem Flag -U starten müssen....

was meint Ihr?
 
Hat geklappt... ich habe die Verzeichnisse unter /var/www mit scp -pr auf /pub/ftp/public kopiert.

Danach hab ich die httpd.conf abgeändert:

ServerRoot=/pub/ftp/public
DocumentRoot=/pub/ftp/public/htdocs

mit ps -aux und kill hab ich dann alle Prozesse von Apache eliminiert.

danach habe ich httpd mit /usr/sbin/httpd neu gestartet.

Nun läuft Apache chrooted unter /pub/ftp/public {auf der zeiten Festplatte} und nich unter /var/www {auf der ersten Festplatte}

danke für euer lesen und ich hoffe dieser Threat wird mal von nutzen sein.....

beste Grüße

Robert
 
Zurück
Oben