Могу ли я закодировать даты последнего изменения ресурсов в HTML? - PullRequest
0 голосов
/ 28 мая 2020

«Современные» веб-сайты (не приложения!) Включают множество внешних ресурсов, часто размещенных на сторонних доменах, таких как CDN (в лучшем случае). Хотя это раздражает, я понимаю цель этого.

Теперь, как я понимаю, работает кеширование:

  • веб-сервер может указывать интервал истечения срока действия для типов ресурсов и
  • браузеры будут повторно запрашивать только после истечения этого интервала (если не принудительно).
  • Веб-серверы также могут указать в ответе 304, что у них нет ничего нового.

I развернуть статически сгенерированный сайт через GitHub Pages. Кажется, используются 10-минутные интервалы истечения для ресурсов CSS и JS; учитывая мой ожидаемый трафик c, это практически не кеширование: клиент обычно запрашивает эти ресурсы (и, я надеюсь, быстро получит 304).

Теперь я понимаю, что это лучшее, что вы можете сделать для сайтов Dynami c. Однако в случае со статически сгенерированными сайтами - которые, к счастью, становятся все более популярными - это кажется глупым. Мой генератор знает точно , когда файл изменялся (даже в разных сборках, если он отслеживает отпечатки пальцев). Поэтому было бы почти тривиально указать прямо в HTML, когда ресурс (CSS, JS, изображения, ...) был в последний раз изменен. Тогда браузеру даже не нужно будет выполнять удаленный вызов (который может включать накладные расходы DNS и SSL в случае DNS).

Тег link не кажется поддерживать это любым способом. Есть другой? Или мне чего-то не хватает и это вообще не проблема?

...