Hi,

Sebastian Lechte wrote:

> 
>> Man k�nnte sicher auch nett mit mod_rewrite eine einfache Umschreibung
>> basteln.
> 
> das waere ideal, und am einfachsten. die frage ist: wie mach ich das? hab
> noch nie mit mod_rewrite gearbeitet :(
> wie kann ich utf-8 in einer regular expression (welche man fuer mod_rewrite
> meiner nachforschungen nach benutzen muss) erkennen?

Die Zeichen, die in ISO 8859-1 enthalten sind, fallen in UTF-8 Kodierung
in den Bereich 0xC280 - 0xC3BF (2 Byte). ASCII-Zeichen (7-bit) bleiben
ja unver�ndert.

So kann man bei Auftreten der Zeichen 0xC3 ( ~A ) bzw. 0xC2 ( ^A )
vermuten, dass es sich um eine UTF-8 kodierte Anfrage handelt und eine
Dekodierung veranlassen.

Um erstmal nicht zu weit zu springen, kann man die Umlaute und das '�'
mit folgenden RewriteRules wieder "dekodieren". F�r eine vollst�ndige
L�sung k�me man an einer RewriteMap nicht vorbei.

>     # �
>     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]

In einem Apache der 1.3.x Serie scheinen die Regeln nicht zu greifen, da
dessen mod_rewrite wohl nicht perl-kompatible RegExps verwendet.

gruss,
.max



--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an [EMAIL PROTECTED]
           sonstige Anfragen an [EMAIL PROTECTED]
--------------------------------------------------------------------------

Antwort per Email an