Jim Britain wrote:
On Sat, 13 Sep 2008 08:13:51 +0100, "dave selby"
<[EMAIL PROTECTED]> wrote:
2008/9/12 Scott Gifford <[EMAIL PROTECTED]>:
"dave selby" <[EMAIL PROTECTED]> writes:
Is there a way for me to turn off if-modified-since so the client
browser will ALWAYS use its locally cached document
Dave,
Usually sending an Expires header will tell browsers to mostly use a
cached version. I use something like this to set my expires time to
quite a bit in the future:
<Directory /path/to/dir>
ExpiresActive On
ExpiresDefault A86400000
</Directory>
This is part of mod_expires:
http://httpd.apache.org/docs/2.0/mod/mod_expires.html
Also, it would really surprise me if Apache used the parent directory
in deciding about IMS requests. You might want to do some simple
experiments to verify this is what it's doing.
Thank you, thats useful. Something odd is definitely happening.
That part of my app as of last night is in pieces (joys of software
development) but I am hopeing to rebuild it over the next couple of
days. I will do some experiments & repost here.
Just out of curiosity, I looked up Etags on wikipedia -- most
interesting, in relation to caching, and what apache uses for
generation and comparison.
In short etags are like a cookie.. for changed/unchanged content, and
is used in combination with the date-time stamp, with preference given
for the e-tag Z(different e-tag = different content)... changing the
inode of a file changes the e-tag... Apache has mechanisms for
controlling etag generation...
Re: http://en.wikipedia.org/wiki/HTTP_ETag
http://www.iwaw.net/04/Clausen.pdf -- (paragraph: 10)towards the
end... (worth reading the whole thing) -- details are a little buried,
pointing toward further research in Apache docs/code.
I vaguely remembered something like that, which is why I mentioned it.
I was thinking that if one really wanted to fool the browser, one may
need to add an Etag: header, with the same value as what the browser
sent. That would be possible using SetEnvIf and mod_rewrite and
mod_headers. But maybe just ignoring the Etag header has the same result.
I have started to play with mod_rewrite in the meantime, for another
issue. It's amazing what that thing can do. And it is a standard Apache
2.x component, so if your application is based on Apache being there
anyway, you would not introduce anything "foreign" by using it.
mod_headers and mod_rewrite also by the way.
It seems a pity not to use these tools if they are available.
I have an application that runs on multiple platforms (Solaris, HPUX,
various Linuxes, Win32), based on Apache, mod_perl (perl integration in
Apache), and to a lesser extent Tomcat and thus Java. So far, over
several years, I have not encountered any serious incompatibilities
between platforms with any of these packages. Your mileage may vary of
course.
All of the above rests on the assumption that you have a problem because
Apache considers the image files as modified for some reason. As
someone pointed out however, that looks suspicious, and should really be
checked first.
Another tidbit that comes to mind, is that the browser is not the only
agent that may play a role here : there could be any number of proxies
between your server and the browser, and one of them might decide to
re-retrieve the object for some reason of its own. So you might still
want to make sure that you are setting the proper caching HTTP headers,
or at least not setting some that prevent caching.
---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: [EMAIL PROTECTED]
" from the digest: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]