4

通常,我App_Offline.htm用于使网站脱机。但有时,当我这样做时,站点就会挂起(例如:浏览器永远等待,服务器根本没有响应。当我更改某些内容(例如控件)时,这似乎发生在可更新站点上,之后,当它运行速度不够快(站点挂起)时,我将 App_Offline.htm 放在网站的根目录中。

在大多数情况下,这会立即关闭我的网站。但有时它不会。在这些情况下,我不能只是停止网站(当我重新启动时,行为会继续)。停止应用程序池不会让我重新启动同一个应用程序池。到目前为止,唯一的两个解决方案是重新启动整个 IIS Web 服务。

我想防止这种情况发生。这是 IIS 中的一个错误,在App_Offline.htm发现时不是“破坏所有操作”吗?我将 IIS 7 与 Windows 2008 SP2 64 位一起使用。

4

5 回答 5

6

我发现我的 web.config 文件要么有错误,要么丢失。在这种情况下,app_offline.htm 不会得到处理。

于 2012-05-31T16:15:31.210 回答
2

IIS 不应停止现有操作,仅阻止新请求通过:app_offline.htm 会停止当前请求还是仅停止新请求?

听起来您正在描述一个场景,您更新控件,尝试加载页面,并且 IE 卡在加载中。此时您放下app_offline.htm并期望立即看到该页面。

如果您在实施后提出了一个完全独立的/新的请求,app_offline.htm那么您应该会看到该页面出现。但是,现有请求不会受到上面链接的影响。

app_offline.htm如果可能,请尝试在进行控制更改之前部署文件。

于 2011-01-23T16:49:52.400 回答
1

我不确定“停止应用程序池不会让我重新启动同一个应用程序池”是什么意思...如果您的意思是停止后不能立即重新启动池,那是因为它没有停止然而。根据该池中工作进程的数量,它可能需要一分钟才能完全减速,以便它可以接受启动命令。

另外,我认为您必须重新启动池才能使 app_offline.htm 有效工作。

于 2011-01-28T18:36:08.960 回答
1

事情就是这样。每次在服务器打开 .sln 或更新代码时,都会在根目录中创建 app_offline 票证。这是 asp.net 本身的功能,可防止任何访问干扰您的开发。

每次打开 .sln 后手动删除 app_offline。

希望这有帮助。谢谢。

于 2012-12-21T03:19:19.637 回答
0

另一种可能性是缺少处理程序。需要以下处理程序:

ExtensionlessUrlHandler-Integrated-4.0
于 2018-02-23T14:22:07.910 回答