Кэширование вывода IIS с расширением ISAPI

У меня есть приложение, работающее в IIS через расширение ISAPI с выводами файлы JSON на основе входного URL (это работает с интерфейсом RESTful - URL имеют форму http://domain/path/to/resource.json).

Приложение работает хорошо, но я не могу получить Кэширование вывода IIS, работающее на файлы, которые я генерирую.

В моем web.config я имею:

<system.webServer>
    ...
    <caching>
        <profiles>
            <add extension=".json" policy="CacheForTimePeriod" kernelCachePolicy="DontCache" duration="00:00:30" />
        </profiles>
    </caching>
</system.webServer>

Я также попытался использовать * но это не работает также.

Какие-либо идеи, почему это не работало бы?Спасибо!

1
задан 8 December 2014 в 20:46
1 ответ

По умолчанию кэширование отключено в фильтрах ISAPI, и я не верю, что его можно включить через графический интерфейс. Установите фильтр ISAPI и включите функцию кэширования, изменив раздел файла web.config или используя appcmd.exe .

appcmd.exe Пример:

appcmd.exe set config -section:system.webServer/isapiFilters /+"[name='YourJsonIsapi',path='c:\yourpath\YourJsonIsapi.dll',enabled='True',enableCache='True']" /commit:apphost

web.config Пример:

<configuration>
   <system.webServer>
      <isapiFilters>
         <filter 
            name="YourJsonIsapi" 
            enabled="true" 
            enableCache="true" 
            path="C:\yourpath\YourJsonIsapi.dll" />
      </isapiFilters>
   </system.webServer>
</configuration>
0
ответ дан 4 December 2019 в 08:18

Теги

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