Мы включили статическое кэширование ресурсов в нашем приложении ASP.NET следующим образом:
<system.webServer>
<staticContent>
<clientCache cacheControlMode="UseExpires" httpExpires="Thu, 29 Oct 2020 00:00:00 GMT" />
</staticContent>
</system.webServer>
Используя сниффер, мы можем подтвердить, что тег Expires
действительно помещается в заголовок respose.
Однако браузеры настаивают на том, чтобы запросить сервер проверить, изменился ли ресурс. Сервер возвращает неизмененный код (304). Это действительно очень легкий запрос, но мы очень заинтересованы в производительности, поэтому мы хотели бы сохранить эти запросы.
Как я могу сказать броузерам, что они даже не должны запрашивать сервер?
PS: ETag должным образом отправляются клиенту. Я думал, что если я их удалу, браузеры могут как-то перестать запрашивать сервер, но я не смог удалить эти теги в IIS 7. Я не знаю, поможет ли это в любом случае.