22  /  26

Заголовки и 304 ответ

Просмотров: 29829
Дата последнего изменения: 17.01.2024
Роберт Басыров
Сложность урока:
2 уровень - несложные понятия и действия, но не расслабляйтесь.
1
2
3
4
5
Недоступно в лицензиях:
Ограничений нет

Заголовок X-Bitrix-Composite

При отдаче страницы из кеша, а также в ответе композитного ajax хита добавляется заголовок X-Bitrix-Composite со следующими значениями:

  • X-Bitrix-Composite: Cache (200) – отдача страницы из композитного кеша
  • X-Bitrix-Composite: Cache (304) – отдача страницы из композитного кеша (304 ответ)

  • X-Bitrix-Composite: Ajax – ответ композитного аякса
  • X-Bitrix-Composite: Ajax (stable) – кеш не изменился
  • X-Bitrix-Composite: Ajax (changed) – кеш изменился на этом хите
  • X-Bitrix-Composite: Ajax (error:not_cacheable) – страница не может быть закеширована
  • X-Bitrix-Composite: Ajax (error:redirect) – произошел редирект
  • X-Bitrix-Composite: Ajax (error:not_injected) – композитный js не смог записаться в кеш

304 ответ

Когда страница отдаётся из кеша, для неё отдаётся заголовок Last-Modified, который сообщает дату последнего изменения. В нашем случае это будет дата создания файла на диске. Когда браузер получает этот ответ с данными заголовка, то последующие свои хиты на эту страницу он делает со специальным заголовком If-Modified-Since, в котором спрашивает: "А не изменилась ли страница после даты, полученной в Last-Modified?" И если она не изменилась, то Композитный сайт вместо страницы отдаёт заголовок 304, а браузер берёт страницу из локального кеша.

Такой ответ хорош не только для браузера, но и для поисковиков, так как поисковик в этом случае свои лимиты на индексацию расходует на страницы, которые реально изменялись. (У каждого поисковика есть лимиты на то, сколько страниц он может пройти за одну сессию.)

Примечание: 304 ответ отдаётся на третий хит: на первый создаётся композитный кеш, на второй передаётся время изменения, на третий - идет с заголовком if-Modified-Since, на который сервер отвечает 304 ответом.

15
Курсы разработаны в компании «1С-Битрикс»

Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.
Развернуть комментарии