【问题标题】:IIS 8.5 Serving Old FilesIIS 8.5 服务旧文件
【发布时间】:2016-08-08 21:19:55
【问题描述】:

我在 Windows Server 2012 IIS 8.5 上有一个 clickonce 应用程序。我最近将它更新到一个新版本,它工作正常,除了第二个网页使用一个 URL 链接到它。它直接链接到 .application 文件,当我使用该链接时,我得到了该文件的 2.1.0.10 版本,而不是服务器版本 3.1.0.1 的那个。

只有在使用该链接时,其他 url 的服务器才是正确的文件。我什至在两台服务器上都停止了网站(负载平衡),并且链接仍然以某种方式下载旧文件。

我在 IIS 的输出缓存设置下关闭了缓存和内核缓存,我将通用 HTTP 响应标头设置为立即过期 Web 内容,但它仍在提供旧文件,即使它不再存在。我有一个用于该特定 url 的 url 重写规则,以重定向到一个有效的 URL,但我仍然下载一个旧文件。

我已经重新启动了 IIS 和服务器本身,但没有任何改变。然后我尝试将文件复制到一个新文件夹并在 IIS 中创建一个新站点。我复制了绑定并停止了旧站点和应用程序池。仍然获得旧文件。

谁能帮我弄清楚 IIS 发生了什么?即使网站停止,它如何提供不存在的文件?我怎样才能让它更新?

【问题讨论】:

    标签: asp.net caching iis


    【解决方案1】:

    如果 Web 服务器已停止,则此文件可能会从您的浏览器缓存中“提供”。

    您是否尝试过清除浏览器的缓存?如果这不起作用,可能值得完全重新启动 IIS 服务,或者,如果失败,将网站的 wwwroot 目录移动到其他位置,并重新部署您的站点的最新版本,或者只是重命名 .application 文件并重新-部署?

    这类似于在 Visual Studio 中清理和重新构建项目。

    【讨论】:

    • 我尝试重新启动 IIS 和服务器本身,并将站点复制到新目录并创建新的 IIS 站点并复制绑定。仍然得到不存在的旧文件。还清除了我的浏览器缓存。
    • 您(或您的雇主)在您和服务器之间是否有代理,也可以充当缓存?作为测试,您能否备份您的.application 文件并创建一个新的文本文件,添加一些随机文本,然后重命名它以使其与之前的.application 文件具有相同的名称?如果实际上没有缓存,则通过 Web 浏览器访问 .application 文件不应产生与以前相同的结果。
    • 我没有将其更改为文本文件,但将 url 我的浏览器也给了我不再存在的旧文件。实际上,我之前从未使用过这个 url(它不是一个完全限定的域名,而是直接指向 .application 文件),所以我不确定我的个人缓存是否会成为问题。我现在正在检查负载均衡器。
    • 我让负载均衡器关闭了缓存,并且似乎链接发生了变化。我们的负载均衡器管理员提到负载均衡器只使用在 http 标头中传递的缓存设置。我在 IIS 中的 http 响应标头下检查了该站点,那里什么也没有,我在 IIS 的输出缓存设置下关闭了缓存和内核缓存,我将通用 HTTP 响应标头设置为立即过期 Web 内容。还有其他地方可以设置标题吗?这是一个 clickonce 应用程序,所以我并没有真正做任何网页编码。
    • 你看过HTTP压缩吗? .application 文件有可能(尽管不太可能)已被压缩并随后被 IIS 缓存。不过,老实说,如果它没有负载均衡器,我会查看负载均衡器的缓存。尝试将所有 IIS 服务器设置为使用相同的缓存配置,清除负载均衡器的缓存,然后在负载均衡器上重新启用缓存。运气好的话,这将清除 IIS 服务器和负载平衡器之间的任何差异,并且症状应该会消失。祝你好运! :)
    【解决方案2】:

    最终发现这是由负载平衡器缓存结果的设置引起的。我们关闭了此设置,现在不再出现问题。

    【讨论】:

      【解决方案3】:

      我遇到了同样的问题并尝试了这里(和其他地方!)提到的所有内容,最后发现原因是 IIS 压缩缓存!

      在 IIS 控制台上,点击网站,然后点击压缩,取消选中启用静态内容压缩

      这应该可以解决问题。

      【讨论】:

      • 它为我解决了这个问题。不再有 sc-win32-status 995。
      • 非常感谢。有用。 :) 在禁用模式浏览页面一次并按预期工作后,我重新启用了该功能。
      猜你喜欢
      • 1970-01-01
      • 2020-08-01
      • 1970-01-01
      • 2021-06-04
      • 2014-04-19
      • 1970-01-01
      • 2016-07-30
      • 1970-01-01
      • 2017-08-13
      相关资源
      最近更新 更多