Не могу локально кэшировать мой статический контент II7 - PullRequest
1 голос
/ 11 марта 2012

У меня есть веб-приложение, написанное на ASP.NET 4. Я использую IIS7 и хочу локально кэшировать весь мой статический контент (js, css, images ...).Я добавил этот код в web.config веб-приложения

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

Хотя кажется, что каждый раз, когда я делаю запрос для какого-либо изображения или файла CSS, я сначала получаю 200 ответ, а затем 304 NotМодифицированный ответ.Вместо браузера просто использую версию этого статического файла в локальном кэше.

Например, это запрос и ответ для файла изображения, второй раз я запрашиваю его:


Запрос:

Accept: текст / html, application / xhtml + xml, application / xml; q = 0,9, / ; q = 0,8

Accept-Charset: ISO-8859-1, utf-8; q = 0,7, *; q = 0,3

Accept-Encoding: gzip, deflate, sdch

Accept-Language: en-US, en; q= 0,8

Cache-Control: max-age = 0

Соединение: keep-alive

Cookie: USER_ITEMS_SORTBY_COOKIEKEY = 7;ASP.NET_SessionId = gi4yazmfarsdvzedx2ltpdyt;

Хост: dev.y **** e.co.il

If-Modified-Since: ср, 11 января 2012 19:27:14 GMT

If-None-Match: "6bc4ec597d0cc1: 0"

Пользователь-агент: Mozilla / 5.0 (Windows NT 6.1; WOW64) AppleWebKit / 535.11 (KHTML, как Gecko)

Chrome / 17.0.963.78 Safari / 535.11

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

Диапазон принятия: байты

Дата: сб, 10 марта 2012 22:32:57 GMT

ETag: "6bc4ec597d0cc1: 0"

Срок действия истекает: Солнце, 29 марта 2020 г. 00:00:00 GMT

Последнее изменение: ср, 11 января 2012 19:27:14 GMT

Сервер: Microsoft-IIS / 7.0

X-Powered-By: ASP.NET


Я также пытался использовать подход добавления непосредственно в IIS, нодо сих пор нет.

Спасибо

1 Ответ

1 голос
/ 11 марта 2012

Для конкретной папки

<configuration>
  <location path="images">
    <system.webServer>
      <staticContent>
        <clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="00:00:15" />
      </staticContent>
    </system.webServer>
  </location>
</configuration>

Для конкретного файла

<configuration>
    <location path="imagefile.jpg">
        <system.webServer>
            <staticContent>
                <clientCache cacheControlMode="DisableCache" />
            </staticContent>
        </system.webServer>
    </location>
</configuration>

Здесь путь к местоположению означает, что файл / папка требует реализации для вашего приложения ...

cacheControlMaxAge - Значение по умолчанию: 1,00: 00: 00 (1 день).

...