如何在IIS7中为每个文件夹和扩展配置静态内容缓存?

如何在IIS7中为每个文件夹和扩展配置静态内容缓存?

我想在IIS7中为我的ASP.NET网站中的静态内容缓存设置规则。

我已经看过这些文章,详细介绍了如何使用以下<clientCache />元素web.config

客户端缓存<clientCache>(IIS.NET)
将过期或缓存控制标头添加到IIS中的静态内容(堆栈溢出)

但是,此设置似乎全局适用于所有静态内容。有没有办法只为某些目录或扩展这样做?

例如,我可能有两个需要单独缓存设置的目录:

/static/images
/content/pdfs

是否有可能建立规则发送缓存头(max-ageexpires基于扩展和文件夹路径等)?

请注意,我必须能够这样做,web.config因为我无法访问IIS控制台。


慕码人8056858
浏览 762回答 3
3回答

守着一只汪

您可以在根目录中为整个文件夹设置特定的缓存标头web.config:<?xml&nbsp;version="1.0"&nbsp;encoding="UTF-8"?><configuration> &nbsp;&nbsp;<!--&nbsp;Note&nbsp;the&nbsp;use&nbsp;of&nbsp;the&nbsp;'location'&nbsp;tag&nbsp;to&nbsp;specify&nbsp;which&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;folder&nbsp;this&nbsp;applies&nbsp;to--> &nbsp;&nbsp;<location&nbsp;path="images"> &nbsp;&nbsp;&nbsp;&nbsp;<system.webServer> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<staticContent> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<clientCache&nbsp;cacheControlMode="UseMaxAge"&nbsp;cacheControlMaxAge="00:00:15"&nbsp;/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</staticContent> &nbsp;&nbsp;&nbsp;&nbsp;</system.webServer> &nbsp;&nbsp;</location></configuration>或者您可以web.config在内容文件夹中的文件中指定这些:<?xml&nbsp;version="1.0"&nbsp;encoding="UTF-8"?><configuration> &nbsp;&nbsp;<system.webServer> &nbsp;&nbsp;&nbsp;&nbsp;<staticContent> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<clientCache&nbsp;cacheControlMode="UseMaxAge"&nbsp;cacheControlMaxAge="00:00:15"&nbsp;/> &nbsp;&nbsp;&nbsp;&nbsp;</staticContent> &nbsp;&nbsp;</system.webServer></configuration>我不知道内置机制来定位特定的文件类型。

犯罪嫌疑人X

您可以基于每个文件执行此操作。使用path属性包含文件名<?xml&nbsp;version="1.0"&nbsp;encoding="UTF-8"?><configuration> &nbsp;&nbsp;&nbsp;&nbsp;<location&nbsp;path="YourFileNameHere.xml"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<system.webServer> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<staticContent> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<clientCache&nbsp;cacheControlMode="DisableCache"&nbsp;/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</staticContent> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</system.webServer> &nbsp;&nbsp;&nbsp;&nbsp;</location></configuration>
打开App,查看更多内容
随时随地看视频慕课网APP