HTTP/1.1 dictates that Cache-Control overrides Expires if both present.
Therefore, send only Cache-Control to HTTP/1.1 requests. This means
that if an intermediary upgraded the request to HTTP/1.1, and the actual
client sent HTTP/1.0, then the actual client might not understand
Cache-Control when it may have understood Expires. RFC 2616 HTTP/1.1
was released June 1999, almost 22 years ago (as this comment is written)
If a client today is sending HTTP/1.0, chances are the client does not
cache. Avoid the overhead of formatting time for Expires to send both
Cache-Control and Expires when the majority of clients are HTTP/1.1 or
HTTP/2 (or later).
improve handling of HTTP/2 DATA frames received
a short time after sending response
"POST request DATA part for non-existing URI closes HTTP/2 connection prematurely"
rename to reflect use for verifying client certificate
(old names are still accepted, but are discouraged)
ssl.ca-file -> ssl.verifyclient.ca-file
ssl.ca-dn-file -> ssl.verifyclient.ca-dn-file
ssl.ca-crl-file -> ssl.verifyclient.ca-crl-file
dir-listing.cache = ( "path" => "..." # path to cache root
"max-age" => 15 ) # max age (default 15 sec)
Simple cache of directory listing. Generating directory listing
on large directives can be expensive. Cache listing for reuse.
This option is for convenience to improve the performance of
directory listings on busy servers, and requires very little
effort for web server admin to enable.
For even better performance on busy servers, the directory listings
could be (externally) generated into index.html files, and mod_indexfile
could be used instead of mod_dirlisting. When directories are modified,
an external trigger could regenerate index.html.
This change allows the server-generated page to be cachable,
as the response is now independent of the query string.
set upper limit of 1/16 max_conns for parallel dirlist
(per lighttpd worker)
or else set 503 Service Unavailable with Retry-After: 2
attempt to avoid "livelock" scenarios or starvation of other requests
1/16 max_conns (default 85) is still a high arbitrary limit;
and limit applies only to directories larger than DIRLIST_BATCH-2
(DIRLIST_BATCH is currently 32)