Экземпляры, в которых HTTP.sys не кэширует содержимое
В этой статье рассматриваются экземпляры, в которых драйвер HTTP.sys не кэширует содержимое.
Оригинальная версия продукта: службы IIS 8.0
Исходный номер базы знаний: 817445
Ситуации, когда HTTP.sys не кэшируются
Кэш HTTP.sys
ответов кэширует любой запрос с соответствующим флагом в заголовке запроса. Этот кэш отключается для каждого запроса. Однако если выполняется одно или несколько из следующих условий, HTTP.sys
ответ запроса не кэшируются:
Запрос не является анонимным запросом.
Запрос требует проверки подлинности. (Например, запрос содержит
Authorization:
заголовок.)Веб-сайт настроен для использования нижнего колонтитула.
Динамическое сжатие включено и используется для ответа.
Примечание.
При кэшировании можно использовать
HTTP.sys
статическое сжатие.Статический файл является UNC-файлом, и
DoDirMonitoringForUnc
раздел реестра не включен.Примечание.
Свойство реестра (значение DWORD) можно использовать
DoDirMonitoringForUnc
для переключения кэша статических файлов обратно в кэш уведомлений об изменениях. Этот параметр задается следующим образом:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Inetinfo\Parameters
Значение по умолчанию равно 0 или не включено. Для него можно задать значение 1, чтобы включить кэширование статического содержимого на основе уведомления об изменениях.Запрос содержит строку запроса.
Кэш отключен. (То есть
MD_VR_NO_CACHE
свойство метабазы равно 1.)Примечание.
Дополнительные сведения о свойстве
MD_VR_NO_CACHE
метабазы см. в документации по продукту. Чтобы просмотреть эту документацию, см . раздел DisableStaticFileCache.Запрос содержит тело сущности.
Для URL-адреса включено сопоставление сертификатов.
Для веб-сайта включено пользовательское ведение журнала.
Версия HTTP запроса не является 1.1 или 1.0.
Запрос содержит заголовок
Translate: f
.Присутствует
Expect:
заголовок, который не содержит точно100 continue
.Запрос содержит заголовок
If-Range:
илиRange:
заголовок.Примечание.
HTTP.sys
обрабатывает только целые ответы.HTTP.sys
не пытается отправлять ответы с диапазоном.Ответ охватывает несколько
SendResponse
вызовов иSendResponseEntityBody
.Примечание.
Кэшируемый ответ должен поступать в одном векторном вызове
SendResponse
.Общий размер ответа больше, чем максимальный размер ответа. Максимальное значение определяется разделом
UriMaxUriBytes
реестра, а значение по умолчанию — 256 КБ.Размер заголовка ответа больше максимального размера заголовка ответа. Значение по умолчанию — 1024 байта.
Кэш уже заполнен. Размер по умолчанию пропорционален физической памяти на компьютере.
Длина ответа равна нулю.
Установлен фильтр программного интерфейса ISAPI, который не поддерживает кэш.
Примечание.
По умолчанию фильтры ISAPI не поддерживают кэш. Необходимо задать свойство метабазы
FilterEnableCache
для фильтра, чтобы обеспечить его кэширование. Все фильтры в установке IIS по умолчанию используют кэш. Сюда входят FrontPage и ASP.NET.
Дополнительные сведения о свойствеFilterEnableCache
метабазы см. в разделе Новые возможности в Windows 10 развертывании.Доступ к статическому файлу осуществляется как документ по умолчанию. (Например, Default.htm существует в корневом каталоге.) При доступе к конкретному файлу по имени (
http://contoso.com/default.htm/
)HTTP.sy
файлы кэшируются. Доступ к веб-сайту путем запроса корневой папки (http://contoso.com/
) приводит к получению не кэшированного ответа.Примечание.
Если первая страница, указанная в списке "Документ по умолчанию", недоступна, службы IIS пытаются обслужить вторую страницу в списке "Документ по умолчанию". В этом случае эта статическая страница не будет обслуживаться из кэша.
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по