Zur Navigation

Umleitung Ordner --> Datei

1 Fearghus

Hi ich hab mich jetzt richtig durchgekämpft durch div. Foren und Anleitungen aber leider nichts passendes gefunden.

Ich will gerne eine Verzeichnis --> auf eine Datei umleiten-
Diese Datei liegt auch in diesem Verzeichnis will nur nicht den Dateinamen schreiben um Sie aufrufbar zu machen.

Hab dazu in der .htaaccess folgendes gemacht.

redirect /verz/verz2/verz3/ http://www.domain.de/verz/verz2/verz3/datei.datei

Bekomme nun als Fehlermeldung You don't have permission to access /verz1/verz2/verz3/ datei.datei datei.datei datei.datei datei.datei datei.datei datei.datei datei.datei datei.datei datei.datei datei.datei on this server.

oben in der URL seh ich auch das er die datei.datei ca 10mal hinter den verzeichnissen noch anführt.

Schöne Grüße

07.11.2011 19:43 | geändert: 07.11.2011 20:16

2 Jörg

Da das Weiterleitungsziel /verz/verz2/verz3/datei.datei auch unterhalb von /verz/verz2/verz3/ liegt, wird in einer Endlosschleife weitergeleitet.

Hast du mod_rewrite zur Verfügung? dort kannst du eine Ausnahmebedingung für eine Weiterleitung definieren.

RewriteEngine on
RewriteCond %{THE_REQUEST} !/verz/verz2/verz3/datei.datei
RewriteRule ^verz/verz2/verz3/ http://www.example.com/verz/verz2/verz3/datei.datei

07.11.2011 21:45

3 Fearghus

leider nicht ohne gehts wahrscheinlich nicht?

07.11.2011 21:55

4 Jörg

Ich sehe keine andere Möglichkeit.

07.11.2011 22:10

5 Fearghus

Hi danke nochmals wegen der Hilfe habe es nun soweit hinbekommen will aber nun weiterer solcher Regeln setzten für darunter liegende Verzeichnisse eigentlich noch 2.

Bsp:

RewriteCond %{THE_REQUEST} !/verz/verz2/verz3/datei.datei
RewriteRule ^verz/verz2/verz3/ http://www.example.com/verz/verz2/verz3/datei.datei

RewriteCond %{THE_REQUEST} !/verz/verz2/datei.datei
RewriteRule ^verz/verz2/ http://www.example.com/verz/verz2/datei.datei

RewriteCond %{THE_REQUEST} !/verz/datei.datei
RewriteRule ^verz/ http://www.example.com/verz/datei.datei

aber er leitet nun alle Verzeichnisse die ich so einstelle zur Datei im untersten Verzeichnis.

Schöne Grüße

08.11.2011 20:45 | geändert: 08.11.2011 20:46

6 Jörg

Füge hinter jede Rule noch ein [L] Flag an:

RewriteCond %{THE_REQUEST} !/verz/verz2/verz3/datei.datei
 RewriteRule ^verz/verz2/verz3/ http://www.example.com/verz/verz2/verz3/datei.datei [L]

Das sollte dafür sorgen, dass bei einem Zutreffen folgende Rules nicht mehr ausgeführt werden

08.11.2011 21:03

7 Fearghus

Hmm klappt leider trotz Flag nicht :-(

08.11.2011 21:26

8 Jörg

Ja, nach der Weiterleitung matcht die erste Rule ja nicht mehr und somit wird das [L] auch nicht mehr berücksichtigt :-\

Schließe die Muster der letzten beiden Rules mal durch ein "[^/]*$" ab:

RewriteRule ^verz/verz2/[^/]*$ http://example.com/verz/verz2/datei.datei [L]

Das gewährleistet, dass der Pfad keine weiteren Slashes mehr enthält.

08.11.2011 21:49 | geändert: 08.11.2011 21:52

9 Fearghus

danke danke danke danke danke danke

kann ich irgendwo was spenden?

Schönen Abend noch und danke danke danke für die Hilfe!!!!!

08.11.2011 22:01

Beitrag schreiben (als Gast)

Beim Verfassen des Beitrages bitte die Forenregeln beachten.





[BBCode-Hilfe]