Web-Server

ID #1035 mod_rewrite mit Umlauten

Problem:

Nach heutigen Standards werden die URLs alt UTF-8 übergeben. Die Umlaute fallen im UTF-8 aber in den 2-Byte-Bereich. Verzeichnisse und Dateien werden aber als Single-Code angelegt.

Lösung:

Folgende Lösung funktioniert aber erst ab Apache 2, da Apache 1.x noch nicht die volle Perl-RegEx unterstüzt. Ausserdem gibt es dort auch noch Probleme mit der UTF-8-Codierung.

# Ä
RewriteRule ^(.*)\xC3\x84(.*)$ $1Ä$2 [N,E=utf8_fixed:1]
# ä
RewriteRule ^(.*)\xC3\xA4(.*)$ $1ä$2 [N,E=utf8_fixed:1]
# Ö
RewriteRule ^(.*)\xC3\x96(.*)$ $1Ö$2 [N,E=utf8_fixed:1]
# ö
RewriteRule ^(.*)\xC3\xB6(.*)$ $1ö$2 [N,E=utf8_fixed:1]
# Ü
RewriteRule ^(.*)\xC3\x9C(.*)$ $1Ü$2 [N,E=utf8_fixed:1]
# ü
RewriteRule ^(.*)\xC3\xBC(.*)$ $1ü$2 [N,E=utf8_fixed:1]
# ß
RewriteRule ^(.*)\xC3\x9F(.*)$ $1ß$2 [N,E=utf8_fixed:1]

RewriteCond %{ENV:utf8_fixed} 1
RewriteRule (.*) $1 [R]
 

sozial Bookmarking
Bookmarken bei YIGG Bookmarken bei Mister-Wong Bookmarken bei Icio Bookmarken bei del.icio.us Bookmarken bei Technorati Bookmarken bei Furl Bookmarken bei Spurl Bookmarken bei Yahoo Bookmarken bei Google

huschi, 2005-12-11 00:33     Artikel ausdrucken Artikel weiterempfehlen Als PDF-Datei anzeigen

Dieser Inhalt ist unter der Creative-Commons Lizenz lizensiert.

Probleme bitte im Server-Support-Forum diskutieren.

überflüssig 1 2 3 4 5 wertvoll  
Durchschnittliche Bewertung:   4.2 von 5 (5 Bewertungen)

Artikel kommentieren