Работаю с php+mysql+css+html - стандартно.
С кроссбраузорностью плохо знаком, поэтому пока ориентируюсь в основном на гугл хром, мозиллу и ие.
В приоритете, конечно, хром. В хроме смотрю проекты и при разработке, при использовании (как пользователь).
И появляется определенная проблема в кэшируемых данных.
Хром кэширует данные. И это хорошо.
Но при разработке часто возникает ситуация что то изменил (часто стили), а они не изменились.
Иду в Хром->Отчистить историю->Изображения и другие файлы. Иду назад на страницу, обновляю - "о подгрузились новые данные!". И так довольно часто.
Изменил стиль - и он подгрузился, а иногда нет (время кэширования?).
Сидишь, думаешь, ищешь ошибку - а потом - "вспомнил! надо Отчистить историю" и всё отобразилось как надо. Такая беготня раздражает. Со страницы в настройки, f5...
Думал отключить кэширование, но браузер не только для разработки, но и для серфинга.
Забуду включить, да и это так себе решение.
И вторая проблема - у пользователя.
Часто в проекте изменяются стили, изображения, куки. А у пользователя (в Хроме) всё это закешировано.
И ему приходится чистить кэш вручную, что плохо.
Разумеется есть
<!-- Время кэширования -->
<meta http-equiv="Cache-Control" content="max-age=86400, must-revalidate" />
Здесь кэш в день. Т.е. если проект изменяется раз в 24 часа, то должно всё автоматически обновится/загрузится. Но ставить его в 0, например для разработки, тоже так себе вариант. Можно забыть вернуть в исходное значение. Да, можно написать условие на любом языке, что если локалхост - выводи 0, иначе 86400 - но так тоже как то не красиво.
И есть
предположение, что в некоторых браузерах, на некоторых системах условие выше не работает (хромиумы (сборки) в линуксе).
Как удалять устаревшие данные (при разработке, в новых версиях при просмотре)?
Как это обычно делается?