C# 未使用最新文件的Web服务器

C# 未使用最新文件的Web服务器,c#,.net,hosting,C#,.net,Hosting,我正在做的一个项目包括一个网站 托管在廉价的共享托管服务器上 每当我向服务器上传一些更新的文件时,它们都不会 必须立即可用 服务器实际运行前可能需要15到30分钟 开始使用新文件而不是旧文件,并且在某些情况下 我甚至需要重新上传更新的文件 更多信息: -C#webforms文件(.aspx和.aspx.cs) -如果服务器上以前没有使用该名称的文件 然后文件总是立即可用 -但是如果我先删除旧文件并刷新页面 我立即得到一个“文件未找到”错误,但如果我随后上传 较新的文件“未找到文件错误”立即停止,

我正在做的一个项目包括一个网站 托管在廉价的共享托管服务器上

每当我向服务器上传一些更新的文件时,它们都不会 必须立即可用

服务器实际运行前可能需要15到30分钟 开始使用新文件而不是旧文件,并且在某些情况下 我甚至需要重新上传更新的文件

更多信息: -C#webforms文件(.aspx和.aspx.cs) -如果服务器上以前没有使用该名称的文件 然后文件总是立即可用 -但是如果我先删除旧文件并刷新页面 我立即得到一个“文件未找到”错误,但如果我随后上传 较新的文件“未找到文件错误”立即停止,但我 重新获取旧文件

我知道服务器实际上没有为.aspx提供服务 页面,而不是使用已编译为dll的版本 (对吗?)

我不确定这在serverfault.com上是否更好 但作为一名程序员,我通常也是这样

你知道为什么会发生这种情况吗?最好是一些解决方案 关于如何修复此行为,以便在上载更新页面时 我们可以马上开始使用吗


谢谢。

通常,触摸web.config文件会回收web服务器-如果这样做,应该清除所有缓存。只需上传一个新的web.config,只需做一点小改动,看看是否有帮助。

通常,触摸web.config文件会回收web服务器-如果这样做,应该刷新所有缓存。只需上传一个新的web.config,只需做一点小改动,看看是否有帮助。

如果您使用的是.NET 2.0网站,则bin文件夹中的.dll可能会出现问题。更改为Web应用程序将永久解决您的问题


如果您使用的是.NET 2.0网站,则bin文件夹中的.dll可能会出现问题。更改为Web应用程序将永久解决您的问题


我在我的一个网站上也看到过这种行为。
在我的例子中,问题是在主机提供商将我的站点移动到他们的新SAN解决方案之后开始的

事实证明,这种新的存储解决方案不支持“文件系统监视程序”。
如果没有它,IIS将永远不会收到任何文件更新与否的通知

他们引入的解决方法是定期将应用程序移动到新的应用程序池中。(这将给出您描述的症状,并且仅定期应用更新。)


我找到的唯一解决方案是将我的站点移动到其他主机提供商。

我在我的一个站点上也看到过这种行为。
在我的例子中,问题是在主机提供商将我的站点移动到他们的新SAN解决方案之后开始的

事实证明,这种新的存储解决方案不支持“文件系统监视程序”。
如果没有它,IIS将永远不会收到任何文件更新与否的通知

他们引入的解决方法是定期将应用程序移动到新的应用程序池中。(这将给出您描述的症状,并且仅定期应用更新。)


我找到的唯一解决方案是将我的网站移动到另一个托管提供商。

如果回收网站使用的应用程序池,您会得到新文件吗?请尝试在IE中使用Control-F5,或在您喜爱的浏览器中使用任何工具,清除旧页面的浏览器缓存。@John Sh:这是一个廉价的共享主机,因此我无法手动回收池@John Sa:这不是缓存问题。如果你回收网站使用的应用程序池,你会得到新文件吗?尝试在IE中使用Control-F5或在你最喜欢的浏览器中使用任何东西,清除旧页面的浏览器缓存。@John Sh:这是一个廉价的共享主机,因此我无法手动回收池@约翰·萨:这不是缓存问题。到目前为止,我只试过一次,也许只是侥幸,但似乎确实有效。从现在开始,我将使用这个方法,看看它的效果如何。到目前为止,我只尝试过一次,也许这只是一个侥幸,但它似乎确实有效。我将从现在开始使用这个方法,看看它的效果如何。