Просьба, чтобы браузеры кэшировали наши изображения (ASP.NET/IIS)

Я просто запустил приложение Скорости Страницы Google против нашего сайта, и одна из рекомендаций состояла в том, чтобы Усилить кэширование браузера. Расширение этого показало следующее:

Следующие кэшируемые ресурсы имеют короткое время жизни свежести: Укажите истечение по крайней мере одна неделя в будущем для следующих ресурсов:

<длинный список изображений >
<некоторые файлы JavaScript >

Как я иду об удлинении "времени жизни свежести" конкретных изображений?

Это - проект ASP.NET, работающий на IIS7.5

19
задан madth3 15 February 2013 в 01:17
поделиться

2 ответа

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

Для тех, кому интересно, ответ был таким (его опубликовал Gabriel McAdams):


Вы делаете это в IIS. Если вы используете IIS 7, вы можете добавить заголовок в свой web.config. Он находится в разделе system.webServer.

<staticContent>
    <clientCache httpExpires="Sun, 29 Mar 2020 00:00:00 GMT" cacheControlMode="UseExpires" />
</staticContent>

Это заставит все статическое содержимое иметь HTTP-заголовок expires, установленный на 2020 год. Под статическим содержимым подразумевается все, что не обслуживается через механизм ASP.NET, например, изображения, файлы сценариев и таблицы стилей.

Или, чтобы использовать относительный срок действия, используйте следующее:

<staticContent>
    <clientCache cacheControlMaxAge ="2.00:00:00" cacheControlMode="UseMaxAge" />
</staticContent>

Это заставит все статическое содержимое иметь HTTP-заголовок expires, установленный на 2 дня.

49
ответ дан 30 November 2019 в 02:24
поделиться

Вам нужно добавить заголовок Expires к вашему статическому контенту, включая изображения, html, js, css файлы. Вы можете легко добавить заголовок expires в раздел system.webServer вашего web.config, используя IIS7:

<staticContent>
    <clientCache httpExpires="Mon, 1 May 2020 05:00:00 GMT" cacheControlMode="UseExpires" />
</staticContent>
4
ответ дан 30 November 2019 в 02:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: