Problem mit mod_rewrite und Authentifiziereung

maceis

Aktives Mitglied
Thread Starter
Dabei seit
24.09.2003
Beiträge
16.880
Reaktionspunkte
626
Hallo zusammen,

ich habe auf einem Apache Server einige Seiten mit Verzeichnis Listings (Options +Indexes).

Bei einem bestimmten Ordner möchte ich eine Verknüpfung zu einem anderen Ordner haben.
Das funktioniert mit Rewrite, ich habe dafür folgere Rewrite Regel in einer entsprechenden .htacces hinterlegt:

Code:
RewriteRule ^/01-org/01.04-gp/$ /02-plan/02.04-gp/01-ba [R=301,L]
Bei Klicken auf den Ordner '/01-org/01.04-gp/' soll man in den Ordner '/02-plan/02.04-gp/01-ba' umgeleitet werden, was auch soweit wie gewünscht funktioniert.


Das Problem:
Die ganze Verzeichnishierarchie ist durch Passwort geschützt.
Wenn man auf die Startseite geht, muss man sich ein mal authentifizieren und kann dann durch das komplette Verzeichnis navigieren und zwar so lange, bis man den Browser beendet und neu startet.
Code:
AuthType Basic 
AuthUserFile /www/htdocs/[...]/cgi-bin/htuser
AuthName "bla bla" 
 
order deny,allow
allow from all
require valid-user

Sobald man aber auf den (umgeleiteten) Ordner '/01-org/01.04-gp/' klickt, muss man sich erneut authentifizieren und zwar merkwürdigerweise zwei mal hintereinander.
Und das jedes mal wieder, wenn man auf den genannten Ordner klickt.

Woran liegt das, und wie kann ich es beheben.

Danke und Gruß
maceis
 
Du musst eine rewritecond mit %{LA-U:REMOTE_USER} blabla einfügen.
Evtl. Googlesuche: look-ahead rewrite auth

(Hab's leider nur noch so im Hinterkopf)

Code:
RewriteCond %{LA-U:REMOTE_USER} !^$
RewriteRule ...

P.S.: Ich hätte gerne hier unten im Direkt-antworten-Editor »CODE« statt »QUOTE« als Icon zum einfügen.
Oder zusätzlich, wie im erweiterten Editor. Geht das?
 
Hallo olivetti,

vielen Dank für Deinen Kommentar.

ich habe das Ganze zwischenzeitlich mal etwas näher untersucht.
Ich glaube nicht, dass eine RewriteCond da hilft, da es so aussieht, als ob das ein clientseitiges Problem wäre.

Sowie ich ich mich einmal auf der Site angemeldet habe, sendet der Client (Savaria) bei jedem Aufruf einer weiteren Seite den Authorization-Header mit den kodierten Zugangsdaten.
Das macht er so lange, bis der Browser beendet wird, auch, wenn zwischendurch anderswo gesurft oder das Fenster geschlossen wird.

Beim Aufruf des Links mit der Umleitung, sendet der Server einen HTTP Status "301 Moved Permanently".
Das veranlasst den Client dazu, den Authorization-Header nicht mehr zu senden und zwar auch dann nicht, wenn man eine andere Seite anruft.

Warum das so ist, weiß ich nicht.
Ich werde mal versuchen, die Umleitung mit andern Statuscodes zu machen, hatte aber bisher keine zeit dafür.

Gruß
maceis

P.S.: Ich hätte gerne hier unten im Direkt-antworten-Editor »CODE« statt »QUOTE« als Icon zum einfügen.
Oder zusätzlich, wie im erweiterten Editor. Geht das?
Damit müsstest Du Dich einmal an difool wenden; ich glaube, er kümmert sich mit um die Boardsoftware.
 
Im erweitereten Editor sind die Buttons für folgende vB-Tags enthalten: (v.l.n.r.)

code, html, php

:teeth:

attachment.php
 

Anhänge

  • erweiteter-editor.png
    erweiteter-editor.png
    24,6 KB · Aufrufe: 121
@maceis: Savaria kenne ich gar nicht. Aber das hört sich schon nach Fehler an.
Teste doch mal mit nur [L].

@Difool:
Danke, dass du dich hier sofort meldest.
Das wäre schön gewesen, wenn die 3 Icons im Direkt-antw-Editor auch zu sehen wären.
Der Erweiterte wird ja auch immer auf eine neue Seite geladen und man kann dann nicht scrollen,
um in anderen Posts evtl. noch was nachzulesen.
 
@olivetti

Du kannst ja im "Direkt antworten-Feld" unterm Thread, wie gewohnt antworten.
Wenn du fertig bist klickst du auf den "Erweitert Button" und highlightest die Textstellen via Cursor und
vergibst so die vB-Tags nachträglich.

Dein geschriebener Text wird ja vom vB-System dafür zwischengespeichert.

@maceis
entschuldige bitte den Offtopic. :)
 
:nono: thanks, das ist mir viel zu umständlich.
Mal sehen, vlt. kann ich mir was im Browser basteln.
 
Savaria?
Musste ich erstmal selbst schauen.
Gemeint war natürlich Safari ;).

Zwischenzeitlich hab ich das Ganze mal mit Firefox getestet.
Der sendet den Authorization-Header auch bei einer 301-Weiterleitung mit.
Funktioniert also wie erwartet und erhofft.

Mit anderen Worten:
Das ganze ist ein Problem von Safari und möglicherweise auch von anderen Browsern und liegt somit außerhalb meiner (direkten) Einflussmöglichkeiten.
Mist ! ! !

Jetzt kann ich nur noch mit einem Symlink arbeiten.
Muss ich wohl so hinnehmen.

Gruß
maceis
 
Uiui, evtl. ein Webkit-Problem? Kannst du das mit Chrome verifizieren?
 
Im Augenblick nicht.
Ich weiß nicht, ob ich mir damit extra Chrome herunterladen soll.

Das mit dem Symlink ist übrigens auch keine brauchbare Lösung.
Funktioniert zwar, wirft aber andere Probleme auf.
 
Chrome extra installieren musst du nicht.

Was passiert denn, wenn du /01-org/ und /02-plan/ in einen gemeinsamen, übergeordneten Ordner steckst?

Also /test/01-org/ und /test/02-plan/
 
Da ändert sich nichts.
Hätte ich aber auch nicht erwartet.
 
Verflixte #13, da habe ich den Link vergessen. Es scheint keine Lösung für Safari 5.1 zu geben.
 
Zurück
Oben Unten