通常,我使用App_Offline.htm
来使站点脱机,但有时候,当我这样做时,站点会挂起(例如:浏览器永远等待,服务器不给出任何响应 at all)。这似乎发生在一个可更新的网站上,当我改变了一些东西,比如一个控件,然后,当它不够快(网站挂起),我把App_Offline. htm放在网站的根目录下。
在大多数情况下,这会立即关闭我的网站。但偶尔不会。在这些情况下,我不能只是停止网站(当我重新启动时,行为继续)。停止应用程序池不会让我重新启动同一个应用程序池。到目前为止,唯一的两个解决方案是重新启动整个IIS Web服务。
我想防止这种情况发生。当发现App_Offline.htm
时,这是否是IIS中的一个错误,而不是“中断所有操作”?我在Windows 2008 SP2 64位上使用IIS 7。
6条答案
按热度按时间h9vpoimq1#
我发现我的web.config文件要么有错误,要么丢失了。在这种情况下,app_offline.htm不会得到处理。
bksxznpy2#
IIS不应停止现有操作,而应仅阻止新请求通过:Will app_offline.htm stop current requests or just new requests?
这听起来像是您在描述一个场景,其中您更新了一个控件,试图加载一个页面,但IE却无法加载。此时,您放下了
app_offline.htm
,并希望立即看到该页面。如果您在放置
app_offline.htm
后提出了一个完全独立的/新的请求,那么您应该会看到页面出现。但是,现有的请求不会受到上面链接的影响。如果可能,请尝试在更改控件之前部署
app_offline.htm
文件。j2cgzkjk3#
我不确定您所说的 “停止应用程序池后无法重新启动同一个应用程序池” 是什么意思...如果您的意思是在停止应用程序池后无法立即重新启动它,那是因为它尚未停止。根据该池中的工作进程数,它可能需要一分钟的时间才能完全停止,以便接受启动命令。
此外,我认为您必须重新启动池,以便app_offline.htm无论如何都能有效工作。
5m1hhzi44#
事情是这样的。每次当你在服务器上打开.sln,或者更新代码时,它都会在根目录下创建app_offline ticket。这是www.example.com本身的特性asp.net,用于防止任何访问干扰你的开发。
每次打开. sln后手动删除app_offline。
希望能帮上忙谢谢
mcdcgff05#
另一种可能是缺少处理程序。需要以下处理程序:
polhcujo6#
要解决此问题,您至少需要:
我正在等待3分钟,以使App_Offline.htm生效,这似乎已允许App_Offline.htm按预期工作。