> Hy,
>
> I've got a problem with a specific URL which runs through haproxy and
> produces a HTTP 400 BADREQ.
> it seems haproxy doesnt like the encoding of the URL, when i remove the
> umlaut in it it gets through correctly
>
> i've tested it with haproxy "1.5.5-1~bpo70+1" from debian. (1.4 works)
>
> URL is called via
> curl
> "http://hostname:8180/produkte/suche/581-brand?fh_search=töpfeblablablabla&selectedSortBy=relevance&16"
>
> and produces
>
> HTTP/1.0 400 Bad request
> Cache-Control: no-cache
> Connection: close
> Content-Type: text/html
>
> <html><body><h1>400 Bad request</h1>
> Your browser sent an invalid request.
> </body></html>
>
> Log Entry:
> Oct 21 13:51:32 n***-proxy001 haproxy[26705]: 127.0.0.1:34847
> [21/Oct/2014:13:51:32.824] mbxapp mbxapp/<NOSRV> -1/-1/-1/-1/0 400 188 -
> - PRNN 5/0/0/0/3 0/0 "<BADREQ>"
>
>
> Anybody a idea ?..
> bug probably ?
Expected behavior in 1.5, which is more strict about those things.
See your tcpdump capture:
> 0x0050: 643f 6668 5f73 6561 7263 683d 74c3 b670 d?fh_search=t..p
> 0x0060: 6665 626c 6162 6c61 626c 6162 6c61 2673 feblablablabla&s
Here you have it, the umlaut is not encoded.
If a (proper) browser requests this url, the umlaut is encoded and haproxy
will let it pass:
0010 35 38 31 2d 62 72 61 6e 64 3f 66 68 5f 73 65 61 581-brand?fh_sea
0020 72 63 68 3d 74 25 43 33 25 42 36 70 66 65 62 6c rch=t%C3%B6pfebl
0030 61 62 6c 61 62 6c 61 62 6c 61 26 73 65 6c 65 63 ablablabla&selec
Regards,
Lukas