Content Cache
eZ Publish uses Symfony HttpCache to manage content "view" cache with the expiration model.
An additional X-Location-Id header is added in the response for identification (for details see cache purge document).
Configuration
Making your controller content cache aware
Sometimes you need that your controller's cache expires in the same time than a specific content (i.e. ESI sub-requests with render
twig helper, for a menu for instance). To be able to do that, you just need to add X-Location-Id header to the response object:
Making your controller user cache aware
If the content you're rendering depends on the user permissions, then an additional header must be set for this as explained in Context aware HTTP cache