• Wieder einmal haben uns unsere Apfeltalker tolle Fotos zur Abstimmung eingesandt. Welches ist Euer Favorit? Stimmt mit ab! Hier geht es zur Abstimmung --> Klick
  • Es ist bereits Apfeltalk-Tradition und wir möchten sie auch in diesem Jahr fortsetzen: Unser Apfeltalk-Weihnachtslogo-Wettbewerb hat begonnen! Gestaltet für uns das Weihnachtsbanner, das im Monat Dezember bis zum Weihnachtsfest unsere Webseite schmücken soll. Lasst Eurer Kreativität freien Lauf! Hier geht es zum Wettbewerb --> Klick

RewriteCondition für mehrere URLs

Slashwalker

Winterbanana
Registriert
15.05.06
Beiträge
2.213
Hallo ATler,
mod_rewrite und RewriteConditions sind für mich immer ein Buch mit sieben Siegeln.

Nun habe ich folgende Situation. Auf einem Server laufen zwei Hauptdomains und 22 Alias-Domains.

Hauptdomains sind example.de und example-europa.de

Für die erste existieren 21 Aliase, die nicht nur verschiedene Schreibweisen beinhalten, sondern teilweise auch regionale Angaben und leider auch IDN Domains mit deutschen Umlauten.

Für die example-europa.de gibt es nur einen Alias exampleeuropa.de.

Die Unterscheidung der beiden Hauptdomains übernimmt ein CMS, welches je nach Hauptdomain einen anderen Inhalt ausgibt.

Nun sollen alle 22 Aliase auf www.example.de verweisen und der Alias exampleeuropa.de soll auf www.example-europa.de verweisen. Leider müssen sich alle Domains einen vhost teilen :(

Bisher hab ich:
RewriteEngine On

RewriteCond %{HTTP_HOST} ^example-europa.de$
RewriteCond %{HTTP_HOST} ^exampleeuropa.de$
RewriteCond %{HTTP_HOST} ^www.exmpleeuropa.de$
RewriteCond %{HTTP_HOST} !^www.example-europa.de$
RewriteRule ^.*$ http://www.example-europa.de [R=301]


RewriteCond %{HTTP_HOST} !^example-europa.de$
RewriteCond %{HTTP_HOST} !^exampleeuropa.de$
RewriteCond %{HTTP_HOST} !^www.exampleeuropa.de$
RewriteCond %{HTTP_HOST} !^www.example-europa.de$
RewriteCond %{HTTP_HOST} !^www.example.de$
RewriteRule ^.*$ http://www.example.de [R=301,L]

Das funktioniert soweit, bis auf einen Haken. exampleeuropa.de wird nicht auf www.example-europa.de weitergeleitet.
Alle anderen Aliase funktionieren und werden korrekt auf www.example.de geleitet.
 
RewriteCond %{HTTP_HOST} ^exampleeuropa.de$
RewriteCond %{HTTP_HOST} ^www.exampleeuropa.de$
RewriteRule ^.*$ http://www.example-europa.de[R=301,L]

RewriteCond %{HTTP_HOST} !^www\.example\.de$ [AND]
RewriteCond %{HTTP_HOST} !^www.example-europa.de$
RewriteRule ^(.*)$ http://www.example.de/$1 [L,R=301]

Grüße