brauche Hilfe bei Error aus der error_log Datei meines Serve

Apache, Lighttpd, nginx, Cherokee
PersilColor
Posts: 4
Joined: 2014-01-27 20:31

brauche Hilfe bei Error aus der error_log Datei meines Serve

Post by PersilColor » 2014-01-27 20:37

seid kurzem taucht folgender Error regelmäßig in der Logdatei des Servers auf:


Code: Select all

Directory index forbidden by Options directive: /var/www/vhosts/vserver.de/httpdocs/



hat jemand eine Idee was es zu bedeuten hat, und wie man es beheben kann?

User avatar
Joe User
Project Manager
Project Manager
Posts: 11599
Joined: 2003-02-27 01:00
Location: Hamburg

Re: brauche Hilfe bei Error aus der error_log Datei meines S

Post by Joe User » 2014-01-27 22:52

Es fehlt schlicht eine in DirectoryIndex gelistete Indexdatei im DocumentRoot des entsprechenden VirtualHost.
Entweder diese Datei anlegen, oder DirectoryIndex passend erweitern.
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.

PersilColor
Posts: 4
Joined: 2014-01-27 20:31

Re: brauche Hilfe bei Error aus der error_log Datei meines S

Post by PersilColor » 2014-01-28 08:43

Hi, Danke für Deine Antwort!

Kannst du vielleicht noch mal in einzelnen Schritten für einen Anfänger erklären was ich genau tun muss?

Vielen Dank :)

User avatar
Joe User
Project Manager
Project Manager
Posts: 11599
Joined: 2003-02-27 01:00
Location: Hamburg

Re: brauche Hilfe bei Error aus der error_log Datei meines S

Post by Joe User » 2014-01-28 11:51

Als erstes finden wir das Konfigurationsverzeichnis des Apache mittels find:

Code: Select all

find /{,usr/local/}etc -type d -iname apache\* -or -type d -iname httpd\*

"/{,usr/local/}etc" entspricht den beiden Standardbasisverzeichnissen für Konfigurationen /etc und /usr/local/etc
"-type d" bedeutet, dass wir nur Verzeichnisse finden wollen
"-iname" bedeutet, dass wir unsere Suche auf die Namen dieser Verzeichnisse einschränken und zwar unabhängig von Gross- und Kleinschreibung
"apache\*" bedeutet, dass die Namen dieser Verzeichnisse mit apache beginnen müssen
"-or" bedeutet, alternativ zu den vorigen Bedingungen sollen die nachfolgenden Bedingungen zutreffen
"-type d -iname httpd\*" erklärt sich nun von selbst

Nun erweitern wir obigen Befehl, um die in den gefundenen Verzeichnissen enthaltenen Dateien nach der Zeichenkette DirectoryIndex mittels grep zu durchsuchen:

Code: Select all

find /{,usr/local/}etc -type d -iname apache\* -or -type d -iname httpd\* | xargs grep -rn 'DirectoryIndex'

"|" ist eine Pipe und übergibt die Ausgabe des vorigen Befehls an den nachfolgenden Befehl
"xargs" zerlegt die ihm übergebenen Daten jeweils an den Leerzeichen und/oder Tabulatoren
"-rn" das r sorgt dafür, dass grep rekursiv durch alle ihm übergebenen Verzeichnisse arbeitet
"-rn" das n sorgt dafür, dass die Fundstellen mit der entsprechenden Zeilennummer ausgegeben wird
"'DirectoryIndex'" entspricht exakt der von uns gesuchten Zeichenkette inklusive Gross- und Kleinschreibung

Wenn ich das auf meinem Server ausführe, erhalte ich zum Beispiel diese Ausgabe:

Code: Select all

[root@freebsd:~] # find /{,usr/local/}etc -type d -iname apache\* -or -type d -iname httpd\* | xargs grep -rn 'DirectoryIndex'
/usr/local/etc/apache22/extra/httpd-autoindex.conf:8:# a file matching those listed in the DirectoryIndex directive.
/usr/local/etc/apache22/httpd.conf:121:DirectoryIndex index.html index.htm index.php

"/usr/local/etc/apache22/httpd.conf" wäre bei mir die gesuchte Konfigurationsdatei
"121" wäre die Zeilennummer (bei grossen Dateien sehr hilfreich)
"DirectoryIndex index.html index.htm index.php" ist die gefundene Zeile

Auf Deinem System sieht die Ausgabe vermutlich anders aus, aber damit solltest Du nun zurechtkommen.
Wenn Du die richtige Datei/Zeile gefunden hast, änderst Du sie mittels des von Dir bevorzugten Texteditor und startest den Apache neu.


Hoffe, es war halbwegs verständlich, ansonsten sei noch auf die entsprechenden Manpages verwiesen.
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.