httpd-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bhattacharya, Sudip" <>
Subject RE: [users@httpd] Questions on Apache Caching
Date Wed, 12 Sep 2012 14:37:04 GMT
Hi Tom,

Can you explain further on the "Manual Synchronization" process? 
Do I have to manually copy paste the static files from backend server to my local cache folder(create
a mirror copy) for achieving this?
Or are you referring to hitting all the URLs manually to force Apache to cache them before
users end start using the proxy.

Also how can I check for local files and conditionally proxy to the backend?

Is there no way to specify caching by file extension/regex pattern? I am only able to mark
specific folders for caching as of now. If a folder has mixed content, static and dynamic
files, I am not able to mark only static files for caching.
I am working with a 3rd party backend application, for which source code is not available,
so I can't set the proper caching headers from the backend application.

BTW, the %R gave me the exact detail on caching in the log that I was looking for. Thanks
a lot for that :)


-----Original Message-----
From: Tom Evans [] 
Sent: Wednesday, September 12, 2012 7:06 PM
Subject: Re: [users@httpd] Questions on Apache Caching

On Wed, Sep 12, 2012 at 1:15 PM, Bhattacharya, Sudip <>
> I am using mod_cache module to enable caching of certain subfolders in VirtualHost section
which is mapped to proxy requests to a remote server.
> Is there any way to log requests specific to cached files? I want to know:
> 1. Which files are actually getting cached 2. How many requests are 
> actually getting served from local cache. Effectively how much bandwidth I am saving
by serving files from local cache.
> 3. Is it possible to avoid the default folder structure of the caching, and get a mirror
structure instead of the remote path/folder/file structure instead?
> 4. Is it possible to enable caching for specific file extensions, or 
> by MIME type

In 2.2 you can alter the access log to output the handler that handled the request (the format
for this is %R) - when an item is returned from the cache the handler will be empty.

In 2.4 you can add set "CacheHeader on", and each response will have a "X-Cache" header added
to it that says whether it was a hit or not, which can then be logged.

You cannot alter the cache file structure in that manner. However, if you can synchronise
all these files from the backend to the cache, you could then only proxy to the backend if
the file is not present on the frontend. This would require manual synchronisation of files
on both sides.

Whether a resource is stored in the cache or not depends upon the headers that the response
has. See the section labelled "What Can be Cached" here:

If you don't want a particular resource to be cached, or vice-versa, set appropriate response
headers. "Cache-Control: private" would allow the client receiving the resource to cache it,
but not your apache cache, nor any intermediate cache between there and the client.



To unsubscribe, e-mail:
For additional commands, e-mail:

This e-mail (and any attachments), is confidential and may be privileged. It may be read,
copied and used only
by intended recipients. Unauthorized access to this e-mail (or attachments) and disclosure
or copying of its 
contents or any action taken in reliance on it is unlawful. Unintended recipients must notify
the sender immediately 
by e-mail/phone & delete it from their system without making any copies or disclosing
it to a third person.

View raw message