On Sun, Feb 10, 2013 at 10:29:12AM +0000, Poul-Henning Kamp wrote:
> Content-Type: text/plain; charset=ISO-8859-1
> --------
> In message <20130210101248.GQ8712@1wt.eu>, Willy Tarreau writes:
> >On Sun, Feb 10, 2013 at 09:38:03AM +0000, Poul-Henning Kamp wrote:
> >> The only two places which care about the character-set of the URL,
> >> is the ultimate client and the ultimate server, to everybody else,
> >> it is just a sequence of opaque bits, which they must treat as a
> >> indivisible unit.
> >
> >It's not that much opaque when your "HTTP router" has to be able to
> >match part of that URL to decide where to route the requests.
>
> First of all, the only non-semantic criteria you can route HTTP
> requests on are the Host: header. (Which we just pass to DNS,
> so we don't care if it is UTF-8 or not).
>
> As soon as you look at the URL, you dive into semantics, and you
> had better have an agreement with the content-provider about what
> those semantics (including char-set) and routing-criteria should be.
The content provider is the same as the one which sets the routing rules.
The 2 typical uses are :
- send static objects to a dedicated farm
- bypass caches for definitely non-cacheable objects
I would love to see only configurations where Host is the only
criterion but real world differs from the ideal one.
Willy