我们最近更新了一个在IIS上运行的Joomla站点,它有一个菜单项,可以在iframe中打开ASP.NET Framework4.8页面。这个页面可以在我在多台机器上测试过的每个浏览器上打开。问题是,自从昨天部署新站点以来,一些用户在访问新菜单项时报告了一个空白页面。在大多数情况下,要求用户清除缓存将允许他们查看页面。大多数问题都与Chrome浏览器有关,但这可能是因为它是最受欢迎的浏览器。
因此,我认为ASP.NET页面在网站上存在缓存问题。我怀疑少数有问题的用户从不关闭他们机器上的web浏览器(大多数是商业用户)。有没有办法强制页面过期并在ASP.NET页面中重新加载?
谢谢。
发布于 2019-07-24 13:37:57
您可以遍历所有缓存项,并逐个删除它们:
foreach (System.Collections.DictionaryEntry entry in HttpContext.Current.Cache)
{
HttpContext.Current.Cache.Remove(string(entry.Key));
}ASP.NET 4.5 C#的语法更正
foreach (System.Collections.DictionaryEntry entry in HttpContext.Current.Cache){
HttpContext.Current.Cache.Remove((string)entry.Key);
}发布于 2019-07-25 13:58:21
要使web内容过期,您可以使用一些iis功能,如客户端缓存或输出缓存。
客户端缓存:此元素指定IIS 7和更高版本发送到Web客户端的与缓存相关的HTTP标头,这些HTTP标头控制Web客户端和代理服务器将如何缓存IIS 7和更高版本返回的内容。
要进行设置,您可以执行以下步骤:
打开iis manager.

有关输出缓存和客户端缓存的更多详细信息,请参阅下面的文章:Client Cache IIS Output Caching
https://stackoverflow.com/questions/57175906
复制相似问题