Project

General

Profile

Bug #2473

If-Modified-Since and symbolic links

Added by eworm over 6 years ago. Updated almost 6 years ago.

Status:
Invalid
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
2013-02-12
Due date:
% Done:

0%

Estimated time:
Missing in 1.5.x:
No

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.

History

#1

Updated by darix over 6 years ago

the symlink is a totally valid file system entry by itself.

touch --no-dereference --reference=ewormdb.tar.gz eworm.db

#2

Updated by stbuehler over 6 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.

#3

Updated by stbuehler about 6 years ago

  • Target version changed from 1.4.x to 1.4.33
#4

Updated by stbuehler almost 6 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