How to get Squid to not cache files with certain extensions?

I've found information on how to keep squid from caching domains/IP addresses, however, that's not quite what I want. I'd like to prevent it from caching .jnlp and .jar files.

The core problem being that when I push updates out to our server, our users that are behind a squid proxy may not get the updated version for several days (apparently it takes that long for squid to figure out that the files have changed). Perhaps I've missed an even easier solution?


Solution 1:

Maybe something like this in your conf:

acl DENYZIP urlpath_regex \.zip
no_cache deny DENYZIP

You could, of course, make a much more sophisticated regex that would handle multiple files (and change the acl name accordingly).

Solution 2:

IIRC you do this by setting up refresh_pattern rules in your squid.conf file. This matches URL's by regex and sets caching policies for the matches. The reference manual describes it here.

Note that the refresh_pattern rules apply only to responses without an explicit expiration time.