Gunnar Bittersmann: Redirect in Unterverzeichnis

Hi,
Ich hab die Datei foo aus dem Verzeichnis bar/ in das Unterverzeichnis bar/baz/ verschoben. Damit sie weiterhin unter http://example.net/bar/foo erreichbar ist (cool links don’t change), wollte ich einen Redirect einrichten.

bar/.htaccess:
RewriteRule foo /bar/baz/foo [redirect=permanent]

Klappt nicht; ich denke, weil die Regel dann auch für das Unterverzeichnis bar/baz/ gilt und eine Endlosschleife erzeugt. Lieg ich da richtig?

Wie müsste die RewriteRule aussehen?

Danke,
Gunnar

--
“I got my finger on the trigger / But I don’t know who to trust” (Bruce Springsteen, Devils and Dust)
  1. Hi Gunnar,

    bar/.htaccess:
    RewriteRule foo /bar/baz/foo [redirect=permanent]

    Klappt nicht; ich denke, weil die Regel dann auch für das Unterverzeichnis bar/baz/ gilt und eine Endlosschleife erzeugt. Lieg ich da richtig?

    Könnte gut sein, hast du schon mal sowas probiert:

    ^foo$

    Was auf jeden Fall gehen müsste, in den DocumentRoot eine .htaccess legen:

    RedirectPermanent /bar/foo /bar/baz/foo

    MfG, Dennis.

    --
    Mein SelfCode: ie:{ fl:( br:> va:) ls:[ fo:) rl:( n4:# ss:) de:] js:| ch:{ sh:( mo:} zu:|
    Auf viele Fragen weiß auch Wikipedia eine Antwort.
  2. Hallo Gunnar,

    wenn /bar direkt in der DocumentRoot ist, kannst Du eine Umleitung aller Datein in /bar/(Datei) nach /bar/baz/(Datei) wie folgt erreichen:

    RewriteEngine   On
    RewriteCond    %{REQUEST_URI}   ^/bar/
    RewriteRule   !^bar/baz/(.*)   http://%{HTTP_HOST}/bar/baz/$1 [R=301,L]

    Sollte es nur um eine Datei foo gehen, dann sollte Dennis' Weg ausreichen.

    Gruß aus Berlin!
    eddi