Bug #2473
closedIf-Modified-Since and symbolic links
Description
Downloading a symlinked file makes lighttpd always deliver the file.
% curl -I --header 'If-Modified-Since: Tue, 12 Feb 2013 16:35:11 GMT' http://dl.mylinuxtime.de/arch/eworm/x86_64/eworm.db | head -n1
HTTP/1.1 200 OK
However using the URL pointing to the real file makes lighttpd return a "Not Modified".
eworm@leda ~ % curl -I --header 'If-Modified-Since: Tue, 12 Feb 2013 16:35:11 GMT' http://dl.mylinuxtime.de/arch/eworm/x86_64/eworm.db.tar.gz | head -n1
HTTP/1.1 304 Not Modified
I would expect lighttpd to check against the real file and return "Not Modified" in both cases.
Updated by darix about 11 years ago
the symlink is a totally valid file system entry by itself.
touch --no-dereference --reference=ewormdb.tar.gz eworm.db
Updated by stbuehler about 11 years ago
hm, changing the link (and have it point somewhere else) could be something you want to see in "Last-Modified"; otoh there are many operations (renaming directories, changing directory symlinks) that change which file you get but won't change Last-Modified (and i don't think this can get fixed in a sane way).
I think the more important question is what we use for creating the ETag - this really should use the referenced file.
Updated by stbuehler almost 11 years ago
- Target version changed from 1.4.x to 1.4.33
Updated by stbuehler over 10 years ago
- Status changed from New to Invalid
- Target version deleted (
1.4.33)
Couldn't reproduce. You probably didn't assign a mimetype for eworm.db, and without mimetype lighttpd doesn't allow any caching (no etag and so on).
Also available in: Atom