我创建了一个 aspx 页面并在 Firefox 和 Chrome 中查看它,它运行正常,运行 C# 代码。但是当我对页面进行更改(包括删除所有内容并提供空白页面)时,两个浏览器都继续显示原始编译的 aspx 页面!
尽管对 aspx 文件进行了更改,但似乎 ASP.Net(Web 服务器)并未重新编译。让它重新编译的唯一方法是更改 web.config 然后重新启动 Web 服务器!
我什至添加了以下代码,但它仍然加载原始页面:
<script runat="server">
Sub Page_Load
Random rd = new Random();
Response.AddHeader("ETag", rd.Next(1111111, 9999999).ToString());
Response.AddHeader("Pragma", "no-cache");
Response.CacheControl = "no-cache";
Response.Cache.SetNoStore();
Response.Expires = -1;
End Sub
</script>
我为排除浏览器缓存所做的测试:
- 创建了一个 aspx 页面并仅在 firefox 中加载它(而不是在 chrome 中)
- 更改了 aspx 文件
- 在 Firefox 中再次加载 aspx 但没有任何变化
- 在 Chrome 中加载它(有史以来第一次),它仍然显示旧版本!
使用 Apache 和 Mono,而不是 IIS