Я хотел бы настроить виртуальный хост Apache, чтобы браузеры кэшировали изображения локально, но каждый раз перед отображением изображений проверяли наличие обновлений на сервере.
У меня есть это сейчас:
<VirtualHost *:80>
ServerName cdn.localhost
DocumentRoot /Users/chad/development/support/cdn
FileETag None
<Directory /Users/chad/development/support/cdn>
AllowOverride None
Order Deny,Allow
</Directory>
</VirtualHost>
и, по крайней мере, локально, файлы кешируются в браузерах на неопределенный срок, пока я вручную не очищу кеш браузеров. Мне это не нравится. Когда я обновляю новое изображение для замены старого изображения, браузеры не видят это обновление.
Я знаю, что могу отключить кеширование вот так
FileETag None
<Directory /Users/chad/development/support/cdn>
AllowOverride None
Order Deny,Allow
Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Headers "Content-Type"
Header unset ETag
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate, proxy-revalidate, no-transform"
Header set Pragma "no-cache"
Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
</Directory>
но я не хочу его полностью отключать.
Итак, как я могу указать браузерам кэшировать изображения, но при этом проверять наличие обновлений на сервере?