Janine: mod_rewrite umleitung

Hi!

wie kann ich Anfragen, die auf ein Verzeichnis gehen, auf eine Datei umleiten, die im übergeordneten Ordner liegt und genauso heißt wie das Verzeichnis?

Beispiel:
/de/Verzeichnis1/ -> /de/Verzeichnis1.htm
/de/Verzeichnis1/Verzeichnis2/ -> /de/Verzeichnis1/Verzeichnis2.htm

Bei /de/, etc.(/Ländercode/) soll diese Umleitung nicht stattfinden.

Gute wäre noch, wenn nur umgeleitet wird, wenn die Datei auch existiert?

ich habe mir folgendes Überlegt
RewriteCond %{REQUEST_FILENAME} -d
RewriteCond %{REQUEST_FILENAME}.htm -f
RewriteRule ^(.*)$ $1.htm [L]

jedoch funktioniert das nicht.
Bei der Umleitung nach "1.htm" hätte ich eh das Problem, dass, denke ich, so etwas herauskommen würde /de/Verzeichnis1/Verzeichnis2/.htm

Kann mir jemand sagen, wie das richtig lauten muss?

Janine

  1. hi,
    spontan würd ich jetzt vermuten:
    RewriteRule ^(.*)/(.*?)/$ $1/$2.htm [L]

    gruß, Nick

    1. Hi!

      spontan würd ich jetzt vermuten:
      RewriteRule ^(.*)/(.*?)/$ $1/$2.htm [L]

      das funktioniert soweit, jedoch bleibt die URL stehen.

      wenn ich es so abändere
      RewriteRule ^(.*)/(.*?)/$ $1/$2.htm [L,R=301]

      wird falsch weitergeleitet
      und zwar
      http://www.example.org/de/Verzeichnis1/ -> http://www.example.org/home/USER/www.example.org/de/Verzeichnis1.htm

      Janine

      1. Hi!

        spontan würd ich jetzt vermuten:
        RewriteRule ^(.*)/(.*?)/$ $1/$2.htm [L]

        das funktioniert soweit, jedoch bleibt die URL stehen.

        wenn ich es so abändere
        RewriteRule ^(.*)/(.*?)/$ $1/$2.htm [L,R=301]

        wird falsch weitergeleitet
        und zwar
        http://www.example.org/de/Verzeichnis1/ -> http://www.example.org/home/USER/www.example.org/de/Verzeichnis1.htm

        kann mir noch jemand ein Tipp geben?

        Janine