PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : apache mod_autoindex



tbrunsfe
02.10.04, 11:38
Hallo Gemeinde,
habe auf Suse9.1 den Apache Web Server installiert, funktioniert auch soweit bis auf das indexing. Habe mir eine eigene httpd mit der DocumentRoot "/srv/www/htdocs". Dort liegt ein file index.html. dieses Kann ich auch über den Webbrowser erreichen. Bennene ich dieses file aber um so kann der Browser es nicht finden, es sollte ein Inhaltsverzeichnis (Index of/) erscheinen. Das tut es aber nicht. Es erscheint eine message Access forbidden!. Access (Berechtigung habe ich auf die folder).

Soweit ich weis ist das apache module autoindex und alias für die Anzeige des Inhaltsverzeichnis verantwortlich. Beide sind bei mir geladen (default).

Hat jemand eine Idee??

Danke, Thomas

Tomek
02.10.04, 12:06
Wie sieht deine Apache-Konfiguration aus?

Indexing musst du aktivieren:

Options +Indexes

Siehe dazu: http://httpd.apache.org/docs-2.0/mod/core.html#options

tbrunsfe
02.10.04, 14:35
Hi Tomek,
hier die einfache config womit sich zumindest der apache im runlevel editor stoppen und starten lässt:
#Globale Umgebung
ServerRoot "/etc/apache2"
PidFile logs/httpd.pid
#Hautpserverkonfiguration
ServerName localhost
Listen 80
User nobody
Group #-1
DocumentRoot "/srv/www/htdocs"

Füge ich nun hinzu:
IndexOptions FancyIndexing

.. so lässt sich der Apache nicht mehr starten:
/etc/init.d/apache2 start gab 1 (Fehler nicht spezifiziert) zurück:
Starting httpd2 (worker) Syntax error on line 10 of /etc/apache2/httpd.conf:
Invalid command 'IndexOptions', perhaps mis-spelled or defined by a module not included in the server configuration

Muss ich den Index irgendwie anders angeben? Das Modul autoindex ist aktiviert ))-;
Bin wie viele hier newbee ((-;

Tomek
03.10.04, 11:00
Lies bitte nochmal meinen Post. Auch bitte die Dokumentation vom Apache-Projekt.

tbrunsfe
07.10.04, 20:46
Hi Tomek,
tut mir ja leid aber all dies lesen hats nun auch noch nicht ans laufen gebracht. Die Konfig:
#Globale Umgebung
ServerRoot "/etc/apache2"
PidFile logs/httpd.pid
#Hautpserverkonfiguration
ServerName localhost
Listen 80
User nobody
Group #-1
DocumentRoot "/srv/www/htdocs"
Options +Indexes
DirectoryIndex index.html index.htm
FancyIndexing on

Was stimmt denn hier nun nicht?? Wäre nett wenn du mich aufklären könntest (-;

Tomek
07.10.04, 20:48
Hast du irgendwo "AllowOverride None" stehen? Wenn ja, ändere das mal auf "AllowOverride Options".

tbrunsfe
07.10.04, 23:42
ja das hatte ich, in default-server.conf und errors.conf, habe dies auf AllowOveride Options geändert, ohne Erfolg. Aber meiner Meinung nach werden diese files anhand meiner Config doch gar nicht geladen da sie nicht mit Inlude <path> im httpd.conf auf diese Verzeichnisse verweisen. So sieht meine Konfig nun aus:
#Globale Umgebung
ServerRoot "/etc/apache2"
PidFile logs/httpd.pid
#Hautpserverkonfiguration
ServerName localhost
Listen 80
User nobody
Group #-1
DocumentRoot "/srv/www/htdocs"
Options +Indexes
DirectoryIndex index.html
IndexOptions FancyIndexing
Include /etc/apache2/sysconfig.d/loadmodule.conf

Letzte Zeile deswegen da ohne sie ich den Apache im runlevel editor nicht starten konnte (Fehlermeldung wegen DirectoryIndex Eintrag)

Der Server läuft nun, kann auf die Documentroot zugreifen, nur das Indexing geht immer noch nicht. )-;

tbrunsfe
07.10.04, 23:51
((((((-; und nach einem Neustart des System anstatt des web Servers gehts nun. Das Problem meiner Ansicht nach war das die httpd.conf den Verweis auf die zu ladenden Module enthalten muss. Danke für deine Mithilfe und Tipps tomek, hoffe der Beitrag hilft dem einen oder anderen ((-;
Thomas