httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robert S. Thau" <>
Subject Re: Negotiation updates, and transparent neg.
Date Wed, 21 Aug 1996 01:35:31 GMT
  I think the only solution that would work is an "all things being equal"
  tie-breaker function which only gets called when */* appears without
  a q-value.  Whatcha think?

This is what we have already.  It doesn't work well.  The problem with
it is that if some resource has variants as follows:

   image/gif; qs=0.5
   image/png; qs=1.0

and some browser comes in with:

   Accept: image/gif, */*

they get the png, even though essentially all browsers which send
accept: lines of this form (without q values) mean that they can
handle gif natively, but can only do a "save to disk" when they get
png.  Sending the png is highly inappropriate behavior in this case.

*This* is the problem I tried to explain to you last year; knocking
down the q value for */* is the only solution.

(I certainly have faith in your ability to come up with contrived
situations in which imposing a low q value on wildcards would lead to
inappropriate behavior, but I have a hard time imagining how the would
ever come up in practice.  The situation I outlined above, by
contrast, does come up very quickly, and makes qs values very
difficult to use in commonly encountered situations.  Clients which
properly send q values will, with Alexei's approach, get exactly what
they asked for in any case; however, absent q values for the clients,
we have to assume *something* on its behalf, and experience has shown
that */*;q=0.2 is *far* more likely to reflect what's going on on the
client end than */*;q=1.0).


View raw message