24 часа - это слишком мало для управления кешем :) Теоретически изображения никогда не меняются без изменения их имени, поэтому вы можете легко установить это значение на год (или месяц, если вам удобнее).
Если вы замените изображение новым изображением, оно получит новое имя. picture-of-cat-on-18th-birthday.jpg
не будет внезапно другим изображением с тем же именем файла. По этой причине имена файлов должны быть несколько специфичны для их содержания.
Для других типов ресурсов, таких как CSS и JS, вы можете выбрать другую тактику. У вас есть (часто) изменяющиеся файлы, и вы никогда не меняете их, вы хотите разделить длину кэширования:
- никогда не меняется -> очень длинный кеш
- меняется -> низкий кеш
Это не выполнимо. Вы можете сделать их обоих или ни одного, .htaccess видит тип файла.
Из-за этого вы устанавливаете его в длинный кэш и используете постфикс, чтобы принудительно начать новую загрузку, если она действительно изменится:
<script src="static.js" />
<script src="changing.js?last_update=150422" />
Таким образом, пользователь должен повторно загрузить его, только если вы действительно внесли изменение.
Эта техника работает на всех ресурсах. Всегда стремитесь к максимальной продолжительности кэширования.