Ein Webseiten-Umzug vom einem Server auf den anderen ist immer ein heikles Unterfangen, vor allem wenn die Server unterschiedliche Standard Character Encodings verwenden. Da kann es durchaus passieren, dass die htaccess 301’er danach nicht mehr funktionieren, speziell wenn Umlaute dabei verwendet werden.
In meinem direkten Fall wurde beim Umzug gleichzeitig von ä/ö/ü Urls auf ae/oe/ue Urls umgestellt. Also wurde logischerweise ein 301-Redirect auf die neuen URL’s gesetzt. Auf dem Testserver (UTF-8) kam dabei folgende Regel zum Einsatz:
Leider sah das ganze auf dem neuen Server deutlich anders aus. Hier funktionierten die alten RewriteRules nicht mehr. Nach ein paar Veränderungen hat das ganze aber wieder hingehauen. Hier die neue Rule:
Hallo, ich habe meine htaccess folgendermaßen geändert:
RewriteCond %{HTTP_HOST} ^www.meyer-ihr-b(ä|Ä|ä|Ä)cker.de$
RewriteRule ^(.*)$ http://www.meyer-ihr-baecker.de$1 [L,R=301]
RewriteCond %{HTTP_HOST} ^meyer-ihr-b(ä|Ä|ä|Ä)cker.de$
RewriteRule ^(.*)$ http://www.meyer-ihr-baecker.de$1 [L,R=301]
RewriteCond %{HTTP_HOST} ^meyer-ihr-baecker.de$
RewriteRule ^(.*)$ http://www.meyer-ihr-baecker.de$1 [L,R=301]
Funktioniert auch alles, bis auf die Zeile 3 (ohne WWW). Diese wird nicht umgewandelt. Woran kann das liegen? Alles andere funktioniert einwandfrei (endlich auch mit Umlauten, danke!).
Gruß!
Heilige Sch*****. SUPER!!!
Mein Kollege und ich saßen ewig an diesem Problem. Wie sind Sie daruf gekommen, dass Apache genau (ü|ý|ü|Ü) für „ü“ braucht?
Vielen Dank trotzdem!
MfG
AB
Die Sonderzeichen stehen auch für ü in einer anderen Kodierung.
Viele Grüße,
Alexander
Auf meinem Server funktioniert das:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?xn--bckergasse-q5a.de$
RewriteRule ^(.*)$ http://www.baeckergasse-augsburg.de/$1 [R=301]
Wie sieht es aus wenn die schlüsselanhänger.html in mitten eines Pfades stehen?
Also:
/kleidung/nützliches/schlüsselanhänger.html
Wie muss dort der Rewrite URI aussehen? Was ist mit Leerzeichen?
Hallo Andreas,
wo die Sonderzeichen stehen macht wenig aus – du musst dann nur den .htaccess Code ein wenig umbauen.
Viele Grüße,
Alexander