Я разработчик, у которого должна быть относительно простая проблема в IIS 7 на Windows Server 2008 R2. Проблема в том, что IIS 7 чрезмерно кэширует весь статический контент на сервере. Он кэширует все содержимое .html и .js и не замечает, когда содержимое изменяется на диске, если я не iisreset.
Я пробовал следующее:
Кажется, ничего не работает. Я очень расстраиваюсь. Кто-нибудь может помочь?
Я бы очень хотел увидеть system.webServer/caching
раздел из вашего applicationhost.config и web.config. Пожалуйста, вставьте их, если можете. Запустив указанную выше команду appcmd, вы только что отключили кэширование в пользовательском режиме, у вас по-прежнему включено кеширование ядра. Кроме того, если вы действительно хотите отключить кеширование на уровне веб-сайта или сервера, просто измените следующее:
<system.webServer>
<caching enabled="false" enableKernelCache="false" />
</system.webServer>
Вы также можете использовать инструменты Fiddler, чтобы проверить, действительно ли контент кэширован, то есть возвращает ли он вам 304.
Если вы запустите netsh http show cache на сервере, увидите ли вы какие-нибудь кэшированные записи? Если да, то вы не отключили кэширование вывода на веб-сервере.
И всего 0,02 доллара, чтобы убедиться, что ваши обработчики являются обработчиками, которые вы ожидаете от них.
Статические файлы обычно обслуживаются обработчиком статических файлов. Если вы сделали сумасшедшие вещи, например, создали карту сценариев с подстановочными знаками или зарегистрировали модуль для всех типов файлов и глаголов ...