Julian Hofmann: Seltsame Fehlerbehandlung - Forsetzung

Hallo,

hatte schon mal am 4. April mit dem Problem begonnen (</archiv/2002/4/8765/#m48451>):
Kurz wiederholt, 404-Fehler werden unterschiedlich behandelt entsprechend ihrer Dateiendung (was nicht sein soll).

Durch Zufall habe ich jetzt gemerkt, daß der Effekt nur auftritt wenn die fehlende Datei im Hauptverzeichnis liegt.

Strukturbeispiel:

  • www.domain.de
      + .htaccess
      + index.php
      + errata
        + 404.html

.htaccess: ErrorDocument 404 /errata/404.html

Also funktioniert es bei http://www.domain.de/nix/nix.html wunderbar, bei http://www.domain.de/nix_mehr.html aber nicht.

Hat jetzt noch einer ne Idee wo's hakt oder was hakt?
Auf Microsoft kann ich's ja schlecht schieben. ;-)

Grüße aus Würzburg
Julian

  1. Hallo,

    Hallo

    hatte schon mal am 4. April mit dem Problem begonnen (</archiv/2002/4/8765/#m48451>):
    Kurz wiederholt, 404-Fehler werden unterschiedlich behandelt entsprechend ihrer Dateiendung (was nicht sein soll).

    Zuerst muss ich dir sagen, dass ich mich erst vor kurzem mit den Apachen verbrüdert habe und mich desshalb noch nicht so ganz mit deren Sitten und Brächen auskenne :).

    Durch Zufall habe ich jetzt gemerkt, daß der Effekt nur auftritt wenn die fehlende Datei im Hauptverzeichnis liegt.

    Strukturbeispiel:

    • www.domain.de
        + .htaccess
        + index.php
        + errata
          + 404.html

    .htaccess: ErrorDocument 404 /errata/404.html

    Versuch den Pfad mal absolut absolut anzugeben mit /Pfad/vom/server/errata/404.html oder http://www.domain.de/errata/404.html.
    Ich könnte mir auch vorstellen, dass es am '/' liegt. Versuchs auch mal mit errata/404.html ohne '/'.

    Von der Apache-Doku her sehe ich keinen Fehler
    http://httpd.apache.org/docs/mod/core.html#errordocument

    Also funktioniert es bei http://www.domain.de/nix/nix.html wunderbar, bei http://www.domain.de/nix_mehr.html aber nicht.

    Dies deutet aus meiner Sicht auf ein Problem mit den Pfadangaben. Versuch mal http://www.domain.de/nix/nix/nix.html.

    Hat jetzt noch einer ne Idee wo's hakt oder was hakt?
    Auf Microsoft kann ich's ja schlecht schieben. ;-)

    Sicher kannst du dass auf Microsoft schieben: Microsofts Undercover-Mitarbeiter schleusen sich in OpenSource-Projekte ein und sabotieren diese durch solche Fehler wie du hier siehst ;-).

    MfG

    Tom2

  2. Hi Julian,

    Kurz wiederholt, 404-Fehler werden unterschiedlich
    behandelt entsprechend ihrer Dateiendung (was nicht
    sein soll).

    im vorherigen Thread lautete meine Antwort: Es liegt nicht an den Endungen, sondern daran, daß verschiedene Handler diese Requests bearbeiten und dem Apache dabei mehr oder weniger ins Handwerk pfuschen.

    Durch Zufall habe ich jetzt gemerkt, daß der Effekt nur auftritt wenn die fehlende Datei im Hauptverzeichnis liegt.

    .htaccess: ErrorDocument 404 /errata/404.html
    Also funktioniert es bei http://www.domain.de/nix/nix.html wunderbar, bei http://www.domain.de/nix_mehr.html aber nicht.

    Aha - ich glaube Dir mal, daß Du für *.html beide Male den Default-Handler verwendest. ;-)

    Hast Du für beide Verzeichnisse dieselbe ErrorDocument-Definition? (Liegt die .htaccess in einer Wurzel beider Pfade?)

    Viele Grüße
          Michael

    1. Hallo Michael,

      Hast Du für beide Verzeichnisse dieselbe ErrorDocument-Definition? (Liegt die .htaccess in einer Wurzel beider Pfade?)

      .htaccess bzw. Error-Definitionen habe ich nur einmal im Hauptverzeichnis der Domain.

      Aber die Lage ist's doch irgendwie auch nicht so ganz, denn in dritter, vierter,... Ebene klappt es ja immernoch.
      Und das Problem habe ich jetzt ja auch schon extra sowohl beim Provozieren des Fehlers, als auch bei Error-Dokument auf .html begrenzt, wodurch es nichts mit nem 500er oder PHP-Fehlern geben sollte.

      Grüße aus Würzburg
      Julian

      1. Hi Julian,

        .htaccess bzw. Error-Definitionen habe ich nur einmal im
        Hauptverzeichnis der Domain.
        Aber die Lage ist's doch irgendwie auch nicht so ganz, denn
        in dritter, vierter,... Ebene klappt es ja immernoch.

        das Gegenteil hätte mich auch sehr gewundert.
        Denn solche Definitionen gelten immer für den entsprechenden Kontext - der kann natürlich ein Verzeichnisbaum sein (.htaccess), aber auch ein Virtual Host oder ein Server oder was auch immer.

        Das Problem scheint also zu sein, daß das oberste Verzeichnis nicht Bestandteil dieses Gültigkeitsbereichs ist. Deshalb meine Frage.

        Wie ist es denn mit beliebigen anderen Anweisungen in .htaccess? Zeigen die vielleicht ähnliche Symptome, wenn Du sie dort mal ausprobieren würdest?

        Ich kann mir einfach nicht vorstellen, daß ErrorDocument an dieser Stelle irgend ein Fehlverhalten zeigt - so etwas wäre einfach zu oft in anderen Installationen aufgetreten und bekannt.

        Viele Grüße
              Michael