.htaccess und der Abbruch-Button

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • .htaccess und der Abbruch-Button

    Hallo Zusammen,

    nachdem ich hier seitenweise über .htaccess lesen konnte sind mir noch folgende Fragen leider offen geblieben:

    1) Kann ich Abfragen, ob bei dem htaccess-LogIn-Fenster der Abbruch-Button gedrückt worden ist?
    PHP-Code:
     if(!isset($_SERVER['PHP_AUTH_USER']))
     {
      
    // Aufruf LogIn-Fenster
      
    header("WWW-Authenticate: Basic realm=\"Willkommen\"");
      
    header('HTTP/1.0 401 Unauthorized');

      
    //Beim Druecken des Abbruch-Buttons zurueckfuehren zum Internetauftritt
      //header("Location: startseite.htm");
      
    echo"Abbrechen-Button gedrueckt";

     }
     else
     {
      echo
    "Name: $_SERVER[PHP_AUTH_USER] - Passwort: $_SERVER[PHP_AUTH_PW]";
     } 
    2) Mir ist noch nicht 100%ig klar wofür der header-Befehl header('HTTP/1.0 401 Unauthorized'); mit aufgeführt wird. Ea funktioniert ja auch ohne!?
    Also zuerst wird der erste header("WWW-Authenticate: Basic realm=\"Willkommen\""); ausgeführt und das LogIn-Fenster erscheint und dann gibt der User seine Zugangsdaten ein und drückt den OK-Button. Danach wird der 'else'-Teil ausgeführt.
    Also nur wenn ich den Abbruch-Button drücke wird der erste Teil der if-Schleife weiter durchlaufen und der header('HTTP/1.0 401 Unauthorized'); wird ausgeführt ABER was passiert da?

    Bzw. ganz so wie ich es eben geschrieben habe kann es auch nicht sein, da wenn ich die Auskommentierung vor dem header("Location: startseite.htm"); weg nehme, dann erscheint erst gar nicht das LogIn-Fenster, sondern es wird sofort die 'startseite.htm' aufgerufen!? das heisst, das Script läuft bis zum dritten header-Befehl und stoppt nicht beim ersten zum Aufruf des LogIn-Fensters!?

    Ich hoffe ich konnte mich einigermassen verständlich ausdrücken.
    Für Eure Hilfe im Voraus vielen Dank!

    Gruß
    Jofris

  • #2
    mit 401 gibst du dem browser das zeichen das der user eben nicht authorisiert is...

    ein php stopt nicht einfach weil du nen header schickst!
    das er in den else bereich geht liegt simpel daran das er das script neu aufruft!
    Man lernt nie aus...

    ...und wenn man's doch tut braucht man sich auch nicht schämen!

    Kommentar


    • #3
      Hallo BloodReaver,

      vielen Dank! In einem Punkt hast du mir weitergeholfen. Ich dachte wirklich, dass er jede Zeile einzeln abarbeitet und ausführt was dort steht, also beim ersten header erst fortfährt wenn im LogIn-Fenster den 'OK'- oder 'Abbruch'-Button gedrückt wurde.

      Was der header('HTTP/1.0 401 Unauthorized'); nun wirklich tut, habe ich noch nicht wirklich verstanden. Was bedeutet es denn für den Browser wenn ich diesen header nicht mit sende? Es funktioniert ja auch ohne diesen header!?

      Und was wird zurückgegeben wenn im LogIn-Fenster der Abbrechen-Button gedrückt wird?

      Hat noch jemand eine Idee?
      Im Voraus schon einmal vielen Dank!

      Gruß
      Jofris

      Kommentar


      • #4
        Es funktioniert ja auch ohne diesen header!?
        denke ich nicht. aber der 401-header wird dann afaik trotzdem gesendet. dass macht dann der apache für dich.

        Kommentar


        • #5
          wie währs den einfach die 401 error page zu ändern? da könntest du einfach das weiterleiten einbauen...

          ps: es währ aber net schlecht das über ein meta refresh zu machen, weil man dann auch noch sagen kann warum man den user etz einfach auf die startseite kickt...
          Man lernt nie aus...

          ...und wenn man's doch tut braucht man sich auch nicht schämen!

          Kommentar

          Lädt...
          X