Hallo Cheatah,
wenn er das macht, *existiert* *keine* *Authentication* *mehr*! Diese findet ausschließlich auf dem Originalserver statt, welcher immer(!) dann, wenn sich der User authentifizieren soll, das ErrorDocument 401 zum Client sendet. Wenn dies ein Redirect auf einen Fremdserver ist, dann ist das ein Redirect und *keine* Authentication mehr.
Wieso nicht? Die ersetzte 401-Seite wird doch erst 'angezeigt', wenn wenigstens einmal die Authentifizierung fehlgeschlagen ist. Der Server schickt den 401 als Antwort auf eine normale Anfrage. Der Client muss jetzt mit einem Auth-Header antworten und kann dabei die Request wiederholen. Wird erneut mit 401 geantwortet, waren die Auth-Daten ungültig. Nach meinem Verständnis wird doch frühestens jetzt die 401er-Entity angezeigt, ob nun die NCSA Originale oder eine veränderte, spielt doch erst hier eine Rolle. Und wenn nun Serverseitig die nächste Anfrage mit einem 3er-Status beantwortet wird, dann steht doch einem Redirect nichts im Wege.
Wenn aber die Daten richtig waren, landet der Client doch auf der geschützten Seite.
Wenn ein ErrorDocument 401 LokaleURI so funktionieren würde, wie Du fragst, würde sofort die entsprechende Fehlermeldung angezeigt und der Client wäre gezwungen, die Request mit Auth-Header zu wiederholen. Er kann aber auch nur mit Auth-Header ohne erneute Request antworten.
Dass ein direkter Redirect nicht geht, ist mir klar, dann würde der Client den 401 nicht zu sehen bekommen. Aber wenn der Client einen 401 bekommt, falsch beantwortet und als Reaktion statt eines 401 mit Informationen einen 303 oder 302 bekommt, sollte das doch kein Problem sein?
Richtig, und genau das ist auch gewollt.
Wieso sollte dann bei fehlerhafter Auth ein 403 kommen?
Weil Torwächter eine Fehlerseite bei einem anderen Server haben möchte. Das impliziert, dass der Zugriff verwehrt wurde, also 403.
Klar, aber das macht nicht der Server, sondern dafür müsste er sorgen, zur Not mit einem serverinternen Redirect auf ein deny all- Verzeichnis.
Steh ich grade auf dem Schlauch?
Cheatah
Gruss, Thoralf