Suche
Suche Menü

Ubuntu 10.04 Apache2 mod_userdir und .htaccess: Options not allowed here

Nun – bevor wir zum eigentlichen Problem kommen, kurz die Vorgeschichte:

Ubuntu-System aufgesetzt, Apache, PHP und Co. installiert, mod_userdir aktiviert, PHP im public_html zum Laufen gebracht.
Dann woll ich über eine .htaccess, genauer gesagt mit dem Eintrag Options -Indexes schlicht das Directory Listing im root des public_html abschalten – und was war? Ein fröhlicher Fehler 500 – Internal Server Error funkelte mir entgegen …

Nach kurzem Blick in die /var/log/apache2/error.log war auch der Grund dafür klar, denn dort stand

[...] /home/dw/public_html/.htaccess: Options not allowed here

Nun gut – die Lösung des Problem ist recht simpel – es muss lediglich in der /etc/apache2/mods-avaiable/userdir.conf eine Zeile geändert werden – und zwar folgende:

UserDir public_html
UserDir disabled root

AllowOverride FileInfo AuthConfig Limit Indexes Options
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec

Order allow,deny
Allow from all                 

Order deny,allow
Deny from all

Wie ihr seht, hab ich lediglich das AllowOverride FileInfo AuthConfig Limit Indexes durch ein AllowOverride Options ergänzt.

Danach einmal den Apache neu starten

sudo service apache2 restart

und schon funzt alles wie es soll …

Update

Pablo war so nett, mich auf eine elegantere (und weniger sicherheitskritische) Lösung hinzuweisen …

Seine Anmerkung habe ich prompt in die Anleitung einfliessen lassen :-)

Tweet about this on TwitterShare on FacebookShare on Google+Email this to someone

Autor:

Ich bin Andi, 34 Jahre jung, glücklicher Papa, Freizeit-Blogger, Pixelfänger und Pixelschubser. Ich hoffe der Artikel hat Dir gefallen. Über ein Feedback würd ich mich freuen :-) Du findest mich ausserdem bei Facebook, Twitter und Google+.

3 Kommentare Schreibe einen Kommentar

  1. Sorry, my native language is Spanish (I think English will be just easier to read), but I think it’s necessary to clear a point here:

    You said the solution is to change AllowOverride to All. This is not entirely true, and may add some security flaws to the webserver. Because of your post, I realised that the quirk that was driving me mad, was „Options“. Just add, to the „AllowOverride“ line, „Options“. And the problem is solved.

    Thank you.

    Firefox 3.6.8 GNU/Linux x64

    Antworten

  2. Hi,

    it´s also possible without modifing the userdir.conf.
    Just place the following in /home/*/public_html/.htaccess:

    IndexIgnore *

    Now apache generates an empty index – looks different, but has the same effect.
    With this you won´t need to restart apache.

    BTW:
    There is no difference between „AllowOverride All“ or „AllowOverride Options“.
    With both the user gains the right to modify all options.
    If you want him to only modify the option „Indexes“ you have to write „AllowOverride Options=Indexes“.

    Bye
    Steven

    Internet Explorer 7.0 Windows Vista

    Antworten

Schreibe einen Kommentar

Pflichtfelder sind mit * markiert.