Написание HTTP-заголовков для управления кэшированием файлов и страниц. Работа с локальным и публичным кэшем.
- 00:00:12 - Client-Server
- 00:00:27 - Proxy
- 00:05:08 - Cache
- 00:07:06 - HTTP
- 00:07:44 - No Store Anywhere
- 00:09:27 - Cache with Timeout
- 00:10:53 - Public Cache
- 00:11:28 - Private Cache
- 00:11:50 - Time Validation
- 00:13:49 - Check by Time
- 00:14:05 - Cache is Valid
- 00:14:22 - Cache is Expired
- 00:15:42 - Time Validation After Expiration
- 00:21:07 - Entity Tag Validation
- 00:22:44 - Cache is Valid
- 00:24:16 - Weak Entity Tag Validation
- 00:29:55 - Vary
- 00:31:17 - Proxy
- 00:38:21 - Request
Скрытый контент (код, слайды, ...) для подписчиков.
Открыть →Чтобы не пропускать новые эпизоды подпишитесь на наш канал @deworkerpro в Telegram
Спасибо
Добрый день! Хотел узнать, а вот OPCache и APCu использовать в dev окружении нужно или не нужно? У меня приложение без опкеша загружается примерно 42секунды, поставил опкеш стало 8 секунд.
Обычно на локальной машине не нужно, так как при разработке файлы часто меняются и при сильном кешировании может показываться старый результат вместо нового. Но если включать в режиме слежения за изменениями файлов, то можно.
Спасибо, Дмитрий! Смотрел на выходных "MoreView" интересно было, спасибо!
Очень много полезной и новой для меня информации. Спасибо! Получается с использованием ETag можно кешировать страницу целиком, легко инвалидируя данные. В список вещей, которые нужно так же включать в подсчёт хеша, можно добавить наличие авторизации. Хотя, наверно HTML кешировать возможно лишнее, поскольку её обьем не очень большой, а высчитывание хэша только добавляет нагрузку на сервер.
Здравствуйте! Спасибо за полезные уроки! Что значит для сервера "страница изменилась"? Что с чем он сравнивает? И как быть с файлами стилей (внешних ресурсов), распространяется ли заголовок кеширования и на них или там все по другому?
Браузер при запросе на сервер может посылать текущее время в заголовке
If-Modified-Since: <date>
или прошлый ETAG в заголовкеIf-None-Match: <ETAG>
. И сервер сравнивает своё время модификации страницы или текущий ETAG страницы именно с ними.Работает также. Серверу Nginx можно для стилей и картинок указать настройку вроде
expires 1d;
и он автоматически будет посылать заголовки кеширования на день с проверкой по дате изменения файла.Или войти через: