expertenaustausch > comm.software.* > comm.software.webserver

Egon Schmid (27.08.2010, 21:16)
Hallo!

Ich habe Apache entsprechend konfiguriert, so dass HTTP-Anfragen mittels
mod_jk an Tomcat weitergeleitet werden.

Es funktioniert, nur beim Umlauten in der URL gibt's Probleme:

Aus einem "/search?q=München" wird "/search?q=M%C3%BCnchen" ... (und es
werden keine Suchergebnisse gefunden)

Bei einem Direktaufruf über Tomcat klappt es ohne Probleme. (Es wird
UTF-8 als Charset verwendet)

Die Zeile

JkOptions +ForwardURICompatUnparsed

in der Apache-Config brachte keine Veränderung.

Ebensowenig ein

AddDefaultCharset utf-8

Hat jemand noch weitere Vorschläge oder Hinweise auf mögliche Ursachen?

Viele Grüße

Egon Schmid
Egon Schmid (31.08.2010, 21:15)
Am 27.08.2010 21:16, schrieb Egon Schmid:

> Aus einem "/search?q=München" wird "/search?q=M%C3%BCnchen"


Das war mein Fehler, die Umwandlung macht der Browser schon selber.

Aber es gibt Zeichensatz-Problem, wenn Umlaute in der URL sind und
mod_jk dazwischen ist.

Rufe ich die URL direkt über Tomcat-Port auf, gibt es keine
Zeichensatz-Probleme.

Bei mod_jk jedoch werden diese umgewandelt... da wird aus einem "ü" ein
"ü"...

Doch der QueryString - vom Servlet abgefragt - bleibt gleich, es ist in
beiden Fällen "q=M%C3%BCnchen"

Keine Ahnung was da falsch läuft...

Viele Grüße

Egon Schmid
mmoossen (10.09.2015, 10:06)
Hallo Egon,

Ich habe heute genau das gleiche Problem.
Weiss Du mittlerweile woran es liegt?

Vielen herzlichen Dank
Michael

On Friday, August 27, 2010 at 9:16:02 PM UTC+2, Egon Schmid wrote:
[..]
Michael Ströder (10.09.2015, 18:49)
> On Friday, August 27, 2010 at 9:16:02 PM UTC+2, Egon Schmid wrote:
>> Hallo!
>> Ich habe Apache entsprechend konfiguriert, so dass HTTP-Anfragen mittels
>> mod_jk an Tomcat weitergeleitet werden.
>> Es funktioniert, nur beim Umlauten in der URL gibt's Probleme:
>> Aus einem "/search?q=München" wird "/search?q=M%C3%BCnchen"


Sieht korrekt aus.

>> ... (und es
>> werden keine Suchergebnisse gefunden)


Dann macht die Anwendung was falsch. Die muss natürlich UTF-8 korrekt dekodieren.

Es kann je nach Browser viele Probleme geben. Deshalb setzen meine
Web-Anwendung neben dem charset-Teil im Content-Type-Header auch das Pendant
in <head> und <form accept-charset="utf-8" ..>. Und natürlich dekodiert die
Anwendung das auch korrekt.

Ciao, Michael.
Ähnliche Themen