bugs: Web servers
This is a list of bugs and cache-unfriendly behaviours by Web
servers. Hopefully, vendors will fix these problems; I don't intend
to point fingers, but rather to help point out problems. It isn't
complete; please send me any more that you
find.
You can also see a similar listing for Proxy/Caches.
Apache
- mod_expires erases any Cache-Control headers
set. If you use the mod_expires directives to set an
expiry time, it will overwrite any CC headers set (at any time);
this makes it impossible, for instance, to set Cache-Control:
public. [report]
- mod_autoindex does not set Cache-friendly
headers - including Content-Length (so that it can't be in
a persistent connection) and Last-Modified (so it can't be
validated). [report]
Netscape Enterprise Server
- HEAD does not always return the same headers as
GET. This is an unfriendly behaviour to caches as well as
many robots. Particularly, Last-Modified is not returned when
making a HEAD request for a default document (i.e.,
http://www.foo.com/bar/). [reported to Netscape]
Microsoft IIS
- IIS 3.0 requires an Accept header when it
shouldn't. Under some circumstances, IIS 3.0 will require
that requests have an Accept header, even though it advertises
itself as a HTTP/1.0 server. This happens most often for
images.
NSCA HTTPd
- HTTP/1.1 requests are responded to with an illegal
Status line. For instance, if you send "GET /
HTTP/1.0" to this server, it will respond with a status line
such as "HTTP/1.0 200 Document Follows". However, if you
give it "GET / HTTP/1.1", the response is "HTTP 200
Document Follows" (note the lack of a protocol version), which
is unparseable.
StarNine WebSTAR
- Date headers are served erratically -
sometimes Date headers are skewed (usually between 5 and 10
minutes), and on other responses, a Date header is not send at all.
This behaviour can be seen on the same object, from the same server
instance, and varies each time the object is requested.
- LM/IMS Validation does not work - even though
WebSTAR serves Last-Modified headers for static content, it does
not reply to conditional requests with 304 Not Modified; instead,
it re-serves the same object in a 200 OK response.
Lotus Domino
top
bookmarks
contact