Nginx convert UTF8 request to ISO-8859-1

etienne.champetier at free.fr etienne.champetier at free.fr
Wed Sep 25 11:31:27 UTC 2013


Hi,

----- Mail original -----
> De: "Francis Daly" <francis at daoine.org>
> À: nginx at nginx.org
> Envoyé: Mardi 24 Septembre 2013 23:47:41
> Objet: Re: Nginx convert UTF8 request to ISO-8859-1
> 
> On Tue, Sep 24, 2013 at 10:19:51PM +0200, etienne.champetier at free.fr
> wrote:
> 
> Hi there,
> 
> > If you put "http://<nginx-server>/?test=ééé" in the address bar,
> > the é will not
> > be html encoded, and will be sent encoded in utf8 (c3a9 in hex,
> > i've checked with wireshark)
> > 
> > The problem is that the fastcgi backend (mono webapp, unix socket)
> > get the é in ISO-8859-1 (e9 in hex, i've checked with socat)
> 
> When I use:
> 
> ==
>   server {
>     listen 8080;
>     location = / {
>       fastcgi_param QUERY_STRING $query_string;
>       fastcgi_pass 127.0.0.1:9;
>     }
>   }
> ==
> 
> and
> 
>   tcpdump -nn -i any -X -s 0 port 8080 or port 9
> 
> and
> 
>   curl http://localhost:8080/?key=
> 
> followed by some bytes, I don't see any difference in the bytes in
> the to-8080 "GET /?key=" and the to-9 "QUERY_STRINGkey=" parts of the
> tcpdump output.
> 
> What am I doing that is different to you?

Sorry today i'm not able to reproduce my 'bug'
Also not able to send utf8 url with IE
We (me and my collegue) must have misread the wireshark dump... (http://en.wikipedia.org/wiki/User_error#PEBKAC)

With curl & IE i've tested nginx works perfectly (UTF8 in - UTF8 out / Latin1 in - Latin1 out)

Thanks and sorry

> 
> 	f
> --
> Francis Daly        francis at daoine.org
> 
> 



More information about the nginx mailing list