2024-09-11 21:28:43 +03:00
---
2024-11-27 09:30:43 +03:00
aliases: []
2024-09-11 21:28:43 +03:00
tags:
- maturity/🌱
date:
- - 2024-06-17
zero-link:
- "[[../../../meta/zero/00 HighLoad|00 HighLoad]]"
parents:
- "[[../Кэширование|Кэширование]]"
linked:
---
2024-10-25 20:04:39 +03:00
Статический контент — это элементы веб-сайта, которые остаются неизменными на протяжении долгого времени на всех страницах. К такому контенту относятся файлы изображений, CSS и JavaScript. Поскольку эти файлы редко изменяются, их можно сохранять в кэше браузера пользователя. Это позволяет браузеру загружать локальные копии файлов, а не запрашивать их каждый раз с сервера, что ускоряет работу сайта.
2024-09-11 21:28:43 +03:00
Обычно кэшируются только GET запросы, так как они должны быть [[../Идемпотентность|идемпотентны]].
2024-11-27 09:30:43 +03:00
Управление кэшированием часто осуществляется с помощью http-заголовков. Заголовки для кэширования:
2024-09-14 22:02:28 +03:00
- ETAG. Т е г , который позволяет указать версию файла. Можно использовать [[../../cryptography/MD5|MD5]].
2024-11-27 09:30:43 +03:00
- [[../../network/Условный GET запрос|If-Modified-Since]]. Дата изменения файла.
- Cache-Control. Передает инструкции по выполнению кэширования.
2024-09-11 21:28:43 +03:00
- public - Сохранять может не только браузер, но и промежуточные узлы
- private - Сохранять может только браузер клиента
- no-store - не кэшируем. ==не уверен что правильно записал==
- no-cache - Сохранять только в браузере, не сохранять на промежуточных серверах. ==не уверен что правильно записал==
- max-age - Сколько нужно хранить файл в памяти
- LocalStorage. Можно через JS складывать данные.
![](../../../meta/files/images/Pasted%20image%2020240619083856.png)
Инвалидация:
- Самый простой вариант указывать версию в GET параметрах.
2024-10-25 20:04:39 +03:00
- Для статики можно использовать [[../Fingerprint|Fingerprint]]
2024-09-11 21:28:43 +03:00
***
## Мета информация
**Область**:: [[../../../meta/zero/00 HighLoad|00 HighLoad]]
2024-10-25 20:04:39 +03:00
**Родитель**:: [[../Кэширование|Кэширование]]
2024-09-11 21:28:43 +03:00
**Источник**::
**Автор**::
**Создана**:: [[2024-06-17]]
### Дополнительные материалы
2024-10-25 20:04:39 +03:00
- [[../../devops/nginx/Кэширование статики в Nginx]]
2024-09-11 21:28:43 +03:00
### Дочерние заметки
2024-09-14 23:38:42 +03:00
<!-- QueryToSerialize: LIST FROM [[]] WHERE contains(Родитель, this.file.link) or contains(parents, this.file.link) -->
2024-11-27 09:30:43 +03:00
<!-- SerializedQuery: LIST FROM [[]] WHERE contains(Родитель, this.file.link) or contains(parents, this.file.link) -->
- [[Кэширование статики в Nginx]]
<!-- SerializedQuery END -->