What's the best way to set Cache-Control headers in Apache2?

Under this link you have some examples on how to set Cache-Control headers in Apache2 server. So generally, there are three different approaches to have these headers set:

  1. Using both mod_expires + mod_headers
  2. Using only mod_headers
  3. Using only mod_expires

Are there any significant differences between them? Which one is the preferred one and why, or maybe it doesn't matter at all? What's the best way to set Cache-Control headers in Apache2?


The main difference is that mod_expires will not replace/update Cache-Control headers if an Expires header has already been set by your web application or script.

The Header directive from mod_headers on the other hand can be configured to not be as considerate and will also happily merge or completely replace any existing headers to new headers you specify. That allows you to override whatever (default and not configurable) Cache-Control headers your web applications or scripts set.

As far as I know mod_headers does not provide an interface to do the calculations that mod_expires does to calculate future dates i.e to set the Expires header to a time stamp of now + 1 month you can't use the Header directive.

So the modules are complementary.

Category: apache 2.4 Time: 2016-07-31 Views: 4

Related post

iOS development

Android development

Python development

JAVA development

Development language

PHP development

Ruby development


Front-end development


development tools

Open Platform

Javascript development

.NET development

cloud computing


Copyright (C) avrocks.com, All Rights Reserved.

processed in 0.279 (s). 12 q(s)