what’s the difference between Expires and Cache-Control headers?

poorani picture poorani · Apr 27, 2011 · Viewed 62.1k times · Source

What’s the difference between Expires and Cache-Control headers?

Answer

A Lee picture A Lee · Apr 28, 2011

Cache-Control was introduced in HTTP/1.1 and offers more options than Expires. They can be used to accomplish the same thing but the data value for Expires is an HTTP date whereas Cache-Control max-age lets you specify a relative amount of time so you could specify "X hours after the page was requested".

HTML Cache control is a very similar question and has a good link to a caching tutorial that should answer most of your questions (e.g., http://www.mnot.net/cache_docs/#EXPIRES). To sum up though, Expires is recommended for static resources like images and Cache-Control when you need more control over how caching is done.