Der folgende Beitrag wurde am 23. 03. 2006, 20:35 Uhr von Olaf Schneider veröffentlicht.
Hallo,
folgendes Szenario: Ich habe eine Website, die Gebrauch von mod_rewrite macht: Jede URL wird einfach als Wert an eine (immer gleiche) php-Datei übergeben, die das Handling übernimmt.
Jetzt gibt es einige URLs, die ich gerne mit einer Authentifizierung versehen möchte.
Eine Möglichkeit (Quick'n'dirty): mod_rewrite so erweitern, so dass diese URLs auf eine zweite php-Datei in einem anderen Verzeichnis übergeben werden. Diese php-Datei includiert lediglich die schon existierende php-Datei, aber das Verzeichnis lässt sich ja schützen.
Ich finde diese Lösung alles andere als elegant, geschweige denn sicher und frage mich, ob es bessere - einfachere - schlankere Umsetzungen gibt. <LocationMatch> und andere schöne Dinge kann ich ja in .htaccess leider nicht verwenden.
Ideen dazu wären nett.
Gruß
Olaf
Der folgende Beitrag wurde am 24. 03. 2006, 16:34 Uhr von Rob veröffentlicht.
> <LocationMatch> und andere schöne Dinge kann ich ja in .htaccess leider nicht verwenden.
Aber <FilesMatch> könntest du ggf. verwenden, je nach Struktur.
Der folgende Beitrag wurde am 24. 03. 2006, 18:26 Uhr von Olaf Schneider veröffentlicht.
Hallo Rob,
> Aber <FilesMatch> könntest du ggf. verwenden, je nach Struktur.
soweit ich verstanden habe, bezieht sich <Files> und <FilesMatch> aber auf reale Namen im Dateisystem. Ich möchte dagegen, dass z.B alle Pfade unter
http://example.org/
normal behandelt werden, bis auf
http://example.org/foo/bar
(Die Struktur ist nur virtuell und spiegelt keine Verzeichnispfade)
Gruß
Olaf
Der folgende Beitrag wurde am 24. 03. 2006, 18:49 Uhr von Rob veröffentlicht.
Hallo Olaf.
Ja, dazu müsste das Verzeichnis foo existieren, es kann dann aber auch leer sein. bar muss nicht existieren.
<FilesMatch "bar$">
....
</FilesMatch>
in einer .htaccess unter http://example.org/.htaccess würde dann z.B. funktionieren.
Bei http://example.org/sonder-behandlung (also kein nicht-existierendes Verzeichnis dazwishen) gäbe es keine Probleme.
grüße
Robert
Der folgende Beitrag wurde am 24. 03. 2006, 21:43 Uhr von Olaf Schneider veröffentlicht.
Hallo Robert,
vielen Dank für Deine Antwort. Das Prinzip ist mir klar. Abgesehen von der kleinen Unstimmigkeit des nur eine .htaccess enthaltenen foo-Verzeichnisses gibt es allerdings dann noch die Unschönheit, dass ich auch unter foo/.htaccess mod_rewrite benutzen müsste, um alle URLs unter http://example.org/foo zu behandeln. Das hätte ich aber doch lieber zentral.
Hmm, nicht soo trivial.
Gruß
Olaf
Der folgende Beitrag wurde am 24. 03. 2006, 22:02 Uhr von Rob veröffentlicht.
Warum brauchst du eine .htaccess in /foo/.htaccess? Das mit <FilesMatch> würde auch aus dem root gehen (bei mir zumindest).
Für mod_rewrite brauchst du nur eine im Unterverzeichnis, wenn in /foo/.htaccess andere RewriteRules definiert (und damit die RewriteRules aus /.htaccess überschrieben) werden.
Grüße
Robert
Der folgende Beitrag wurde am 24. 03. 2006, 23:21 Uhr von Olaf Schneider veröffentlicht.
Hallo Robert,
so geht es. Einschränkung: /foo/bar und /foo2/bar sind nur gemeinsam zu schützen, das brauche ich aber diesem Fall nicht. Ich hatte halt gedacht, dass File auch wirklich Datei meint.
Vielen Dank für Deine Hilfe,
Gruß
Olaf
© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4