Elli: Browser-Fehler melden

Hallo,
ich habe in meiner .access die Statements

ErrorDocument 401 /f/fehler401.shtml
 ErrorDocument 403 /f/fehler403.shtml
 ErrorDocument 404 /f/fehler404.shtml
 ErrorDocument 500 /f/fehler500.shtml

Kann ich in den Programmen die Fehlernummer und vielleicht sogar die URL, die den Fehler verursacht hat, abfragen, so dass ich
aus den 4 Fehlerprogrammen eines machen könnte und aufrufen mit

ErrorDocument 401 /f/fehler.shtml
 ErrorDocument 403 /f/fehler.shtml
 ErrorDocument 404 /f/fehler.shtml
 ErrorDocument 500 /f/fehler.shtml

oder noch besser:

ErrorDocument ??irgendein Fehler?? /f/fehler.shtml?

Gruß
Elli

  1. Hallo,

    sofern du PHP hast mch es einfach so:

    ErrorDocument 401 /f/fehler.php
    ErrorDocument 403 /f/fehler.php
    ErrorDocument 404 /f/fehler.php
    ErrorDocument 500 /f/fehler.php

    in der datei fehler.php

    lässt du dir dann z.b alle umgebungsvariablen per mail zuschcin oder du speichert sie:

    $txt = '';
    foreach ($_SERVER as $key=>$value) { $txt = $txt."SERVER: ".$key.": ".$value."\n "; }
    foreach ($_SESSION as $key=>$value) { $txt = $txt."SESSION: ".$key.": ".$value."\n "; }
    foreach ($_GET as $key=>$value) { $txt = $txt."GET: ".$key.": ".$value."\n "; }
    foreach ($_POST as $key=>$value) { $txt = $txt."POST: ".$key.": ".$value."\n "; }
    foreach ($_REQUEST as $key=>$value) { $txt = $txt."REQUEST: ".$key.": ".$value."\n "; }

    mail('info@rechtsrat-jetzt.de', '404', $txt, $msd);

    dann wird die zuerst ein berg mails in haus stehen, aber da schaust du dann noch wo der fehler liegt, (z.b. exsristeren grafiken nicht ode falsche links) abr die kannst du dann verbessern und bald kommen hoffentlich keine fehler mails mehr

    Greetings

    http://www.rechtsrat-jetzt.de/index.php

    Hallo,
    ich habe in meiner .access die Statements

    ErrorDocument 401 /f/fehler401.shtml
    ErrorDocument 403 /f/fehler403.shtml
    ErrorDocument 404 /f/fehler404.shtml
    ErrorDocument 500 /f/fehler500.shtml

    Kann ich in den Programmen die Fehlernummer und vielleicht sogar die URL, die den Fehler verursacht hat, abfragen, so dass ich
    aus den 4 Fehlerprogrammen eines machen könnte und aufrufen mit

    ErrorDocument 401 /f/fehler.shtml
    ErrorDocument 403 /f/fehler.shtml
    ErrorDocument 404 /f/fehler.shtml
    ErrorDocument 500 /f/fehler.shtml

    oder noch besser:

    ErrorDocument ??irgendein Fehler?? /f/fehler.shtml?

    Gruß
    Elli

    1. Hallo,

      sofern du PHP hast mch es einfach so:

      hab ich leider nicht,

      Gruß
      Elli

  2. Hi,

    Kann ich in den Programmen die Fehlernummer und vielleicht sogar die URL, die den Fehler verursacht hat, abfragen, so dass ich
    aus den 4 Fehlerprogrammen eines machen könnte und aufrufen mit

    ErrorDocument 401 /f/fehler.shtml
    ErrorDocument 403 /f/fehler.shtml
    ErrorDocument 404 /f/fehler.shtml
    ErrorDocument 500 /f/fehler.shtml

    so nicht, aber Du kannst z.B. ErrorDocument 401 /f/fehler.shtml?error=403 angeben und die Angabe dann im Script nutzen.

    Aber was hat Deine Frage mit Browser oder (X)HTML zu tun?

    freundliche Grüße
    Ingo

    1. Hi,

      /f/fehler.shtml?error=403 angeben und die Angabe dann im Script nutzen.

      Wenn aber kein Skipt aktiviert?

      Aber was hat Deine Frage mit Browser oder (X)HTML zu tun?

      Weil die Auswertung in fehler.shtml erfolgen soll.
      Viele Grüße
      Elli

    2. Hi,

      ErrorDocument 401 /f/fehler.shtml
      ErrorDocument 403 /f/fehler.shtml
      ErrorDocument 404 /f/fehler.shtml
      ErrorDocument 500 /f/fehler.shtml
      so nicht,

      Doch, genau so. Der Status-Code steht in $REDIRECT_STATUS zur Verfügung. $SERVER_NAME und $REQUEST_URI sind weitere in dem Zusammenhang sehr nützliche Teile.

      aber Du kannst z.B. ErrorDocument 401 /f/fehler.shtml?error=403 angeben

      Das wäre dann doch eher verwirrend, wenn bei Fehler 401 die 403 übergeben würde ... ;-)
      Und es wäre auch bei korrekter Nummer umständlich, etwas manuell zu übergeben, was sowieso schon automatisch zur Verfügung gestellt wird. Und fehlerträchtig ist es auch, siehe Dein Beispiel ;-)

      cu,
      Andreas

      --
      Warum nennt sich Andreas hier MudGuard?
      Schreinerei Waechter
      O o ostern ...
      Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
      1. Hallo

        Doch, genau so. Der Status-Code steht in $REDIRECT_STATUS zur Verfügung. $SERVER_NAME und $REQUEST_URI sind weitere in dem Zusammenhang sehr nützliche Teile.

        klingt gut.
        Ich habe gleich in SELFHTML nach $REDIRECT_STATUS gesucht, aber leider nichts gefunden.
        Kannst Du mir vielleicht noch sagen, wie ich dies in meinem HTML-Programm abfrage?

        Gruß
        Elli

        1. Hi,

          Ich habe gleich in SELFHTML nach $REDIRECT_STATUS gesucht, aber leider nichts gefunden.
          Kannst Du mir vielleicht noch sagen, wie ich dies in meinem HTML-Programm abfrage?

          Gar nicht, da HTML keine Programmiersprache ist, und es daher kein HTML-Programm geben kann.

          Die Doku zu den Server Side Includes verrät alles nötige.

          cu,
          Andreas

          --
          Warum nennt sich Andreas hier MudGuard?
          Schreinerei Waechter
          O o ostern ...
          Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
          1. Hi,

            Ich habe gleich in SELFHTML nach $REDIRECT_STATUS gesucht, aber leider nichts gefunden.
            Kannst Du mir vielleicht noch sagen, wie ich dies in meinem HTML-Programm abfrage?

            Gar nicht, da HTML keine Programmiersprache ist, und es daher kein HTML-Programm geben kann.

            Ich habe Deine Antwort von zuvor

            ErrorDocument 401 /f/fehler.shtml
            ErrorDocument 403 /f/fehler.shtml
            ErrorDocument 404 /f/fehler.shtml
            ErrorDocument 500 /f/fehler.shtml
            so nicht,

            Doch, genau so. Der Status-Code steht in $REDIRECT_STATUS zur Verfügung. $SERVER_NAME und $REQUEST_URI sind weitere in dem Zusammenhang sehr nützliche Teile.

            so verstanden, als ob die Information dem HTML-Programm (ich nenne es einfach so) zur Verfügung stände (ohne Umweg über weitere Komponenten wie SSI)

            Die Doku zu den Server Side Includes verrät alles nötige.

            Hier finde ich aber keine Möglichkeit, die Umgebungsvariablen abzufragen und z.B. in Abhängigkeit vom Fehler-Code eine Meldung zu senden.
            Viele Grüße
            Elli

        2. Hell-O!

          Ich habe gleich in SELFHTML nach $REDIRECT_STATUS gesucht, aber leider nichts gefunden.

          Steht da auch nicht drin, siehe z.B. Custom Error Responses and Redirects in der Apache-Doku.

          Kannst Du mir vielleicht noch sagen, wie ich dies in meinem HTML-Programm abfrage?

          Da du SSI verwendest, kannst du die genannten Umgebungsvariablen wie in SELFHTML beschrieben ausgeben.

          Siechfred

          --
          Ich bin strenggenommen auch nur interessierter Laie. (molily)
          Siechfreds Tagebuch || Falle Aufteilungsbescheid || RT 221 Erfurt-Altstadt i.V.
          1. Hallo

            Kannst Du mir vielleicht noch sagen, wie ich dies in meinem HTML-Programm abfrage?

            Da du SSI verwendest, kannst du die genannten Umgebungsvariablen wie in SELFHTML beschrieben ausgeben.

            Sinn einer eigenen Fehlerseite ist für mich doch, eigene Texte, abhängig vom Fehlercode auszugeben. Da nützt es mir nichts, wenn ich mit SSI nur die gelieferten Umgebungsvariablen mit einem Einheitstext ausgebe.
            Gruß
            Elli

            1. Sinn einer eigenen Fehlerseite ist für mich doch, eigene Texte, abhängig vom Fehlercode auszugeben.

              Du kannst den Inhalt der Umgebungsvariable per Stringvergleich oder auch mittels Regulären Ausdrücken prüfen, aber das steht eigentlich alles auf der verlinkten Seite. Etwas ausführlicher ist es in der Apache-Doku beschrieben.

              Ganz einfaches Beispiel:

              <!--#if expr='"$REDIRECT_STATUS" = /404/' -->  
              <p>Die Datei <!--#echo var="REQUEST_URI" --> konnte nicht gefunden werden</p>  
              <!--#elif expr='"$REDIRECT_STATUS" = /500/' -->  
              <p>Es ist ein interner Serverfehler aufgetreten.</p>  
              <!--#else -->  
              <p>Es ist ein Fehler aufgetreten: <!--#echo var="REDIRECT_STATUS" --></p>  
              <!--#endif -->
              

              Das sollte doch ausbaufähig sein.

              Siechfred

              --
              Ich bin strenggenommen auch nur interessierter Laie. (molily)
              Siechfreds Tagebuch || Falle Aufteilungsbescheid || RT 221 Erfurt-Altstadt i.V.
              1. Hallo,

                Du kannst den Inhalt der Umgebungsvariable per Stringvergleich oder auch mittels Regulären Ausdrücken prüfen, aber das steht eigentlich alles auf der verlinkten Seite.

                oups, da muss ich etwas übersehen haben!
                Danke
                Elli