我正在开展的一个项目包括一个网站 托管在廉价的共享托管服务器上。
每当我向服务器上传一些更新的文件时,他们就不会 必须立即可用。
实际上服务器可能需要15到30分钟 开始使用新文件而不是旧文件 我甚至需要重新上传更新的文件。
更多信息: - C#webforms文件(.aspx和.aspx.cs) - 如果服务器上没有该名称的先前文件 然后文件总是立即可用 - 但如果我先删除旧文件并刷新页面 我立即收到“找不到文件”错误,但如果我然后上传 较新的文件“文件未找到错误”立即停止,但我 再次取回旧文件。
我知道服务器实际上并没有提供.aspx服务 页面,而是使用它已编译的dll版本 (对吧?)所以也许这是服务器上的编译问题?
我不确定这在serverfault.com上是否会更好 但作为程序员,我通常会来这里。
知道为什么会这样,最好是一些解决方案 关于如何修复此行为,以便我上传更新的页面时 我们可以立即开始使用它吗?
谢谢。
答案 0 :(得分:1)
通常,触摸web.config文件将回收Web服务器 - 如果这样做,则应刷新所有缓存。只需上传一个新的web.config并进行一些简单的更改,看看是否有帮助。
答案 1 :(得分:0)
如果您使用的是.NET 2.0网站,则可能会遇到bin文件夹中的.dll问题。更改为Web应用程序应永久解决您的问题。
答案 2 :(得分:0)
我也在我的一个网站上看到过这种行为 就我而言,问题就是在托管服务提供商将我的网站迁移到新的SAN解决方案之后开始的。
事实证明,这种新的存储解决方案不支持“文件系统观察者” 如果没有它,IIS将永远不会收到任何文件更新时间的通知。
他们介绍的解决方法是将应用程序定期移动到新的应用程序池中。 (这会给您描述的症状只会定期应用更新。)
我找到的唯一解决方案是将我的网站转移到其他托管服务提供商。