Anzeige "Kein Index-Dokument vorhanden" bei 403, index.html ist vorhanden

  • Hallo,


    ich hatte schon bei einem anderen Webhost eine htaccess nach dem Muster:


    RewriteCond %{HTTP_USER_AGENT} ^-?$ [NC]
    RewriteRule ^.*$ - [F,L]


    ErrorDocument 403 "Hinweistext zu 403"


    erstellt, welche dort wie gewünscht funktionierte. Hier wird ein Zugriff mit leerem Useragent auf die Seite nicht erlaubt und der Hinweistext zu 403 ausgeliefert.
    Bei Netcup im Hosting führt dies aber zur Fehlermeldung "Kein Index-Dokument vorhanden", aber nur wenn domain.tld aufgerufen wird. Eine index.html-Datei ist vorhanden. Rufe ich domain.tld/index.html auf, wird auch der 403-Text angezeigt.
    Ändere ich das F in der Rewriterule aber in ein G und das ErrorDocument zu 410, dann wird auch bei Aufruf von domain.tld der Hinweistext angezeigt.


    Auch eine Ausgabe des 403 als 403.html funktioniert nicht, auch wenn ich im WCP "Benutzerdefinierte Fehlerdokumente" angeklickt habe. Wenn ich im WCP bei den Webserver-Einstellungen für die Domain für die Indexdateien index-html als eigenen Wert eingebe, hat das keine Auswirkungen.


    Wie vermeide ich, daß der Hinweis auf "Kein Index-Dokument vorhanden" niemals angezeigt wird und 403 auch als 403 ausgeliefert wird?

  • Passiert das auch, wenn Du statt dem Hinweistext eine existierende HTML-Datei angibst?



    MfG Christian

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)

  • Ja, wie geschrieben, passiert das auch mit einer 403.html.
    Vor allem ist mir unklar, warum es bei G/410 funktioniert, bei F/403 aber nicht. Das ergibt für mich keinen rechten Sinn. Ich vermute den Fehler eher bei netcup, denn beim früheren Webhost funktionierte es wie gedacht.

  • Ja, wie geschrieben, passiert das auch mit einer 403.html.


    Sorry, das habe ich überlesen! :|


    Es könnte auch sein, dass hier eine andere (neuere) Apache-Version zum Einsatz kommt, die sich anders verhält. Ich teste das einmal kurz auf meinem netcup-Webspace aus…


    Edit 1: Funktioniert bei mir nur, wenn ich RewriteEngine on angebe. Dann aber komplett, also auch für das Indexdokument. Ich habe es aber in einem Unterordner getestet. Ich nehme an, Du versuchst es direkt im Hauptordner?


    Apache Configuration
    RewriteEngine on
    RewriteCond %{HTTP_USER_AGENT} ^-?$ [NC]
    RewriteRule .* - [F,L]
    
    
    
    
    ErrorDocument 403 "foobar - error 403"


    Edit 2: Volltreffer! Im Hauptordner funktioniert es nicht. Da überlagert irgendeine globale Konfiguration des Webservers Deine Regel. Ich würde einmal beim Support nachfragen, was man da machen kann, wenn man eigene 403-Fehlerseiten für / ausgeben möchte, verweise dabei ruhig auf diesen Thread.



    MfG Christian

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)