当前位置:  开发笔记 > 后端 > 正文

ASP.NET 2.0 - 如何使用app_offline.htm

如何解决《ASP.NET2.0-如何使用app_offline.htm》经验,为你挑选了4个好方法。

我已经读过app_offline.htm可以放在.NET 2.0应用程序根目录中的文件,该文件本质上会关闭应用程序并禁用所请求的任何其他页面.

我已将文件放在根目录中,我的网站仍然加载.我进入IIS中的默认文档并将其设置为app_offline.htm并且网站仍然加载(尽管这可能是一个缓存问题)

无论如何,有没有人遇到过这个问题?难道我做错了什么?



1> CraigTP..:

我使用了非常方便的app_offline.htm技巧来过去关闭/更新站点而没有任何问题.

确保您实际上将"app_offline.htm"文件放在IIS中已配置的网站的"根"中.

还要确保文件的名称完全符合它的名称: app_offline.htm

除此之外,您应该不需要对IIS进行其他更改,因为此文件(具有此特定名称)的处理由ASP.NET运行时而不是IIS本身(对于IIS v6)处理.

但请注意,虽然将此文件放在站点的根目录中会强制应用程序"关闭"并显示"app_offline.htm"文件本身的内容,但任何现有请求仍将获得提供的真实网站给他们.只有请求才能获得app_offline.htm内容.

如果您仍然遇到问题,请尝试以下链接以获取更多信息:

Scott Gu的App_Offline.htm

App_Offline.htm并解决"IE Friendly Errors"功能

app_offline.htm会停止当前请求还是仅停止新请求?


@JackM - 没问题!事实上,我经常将文件留在我的网站上,并称之为"xapp_offline.htm".因此它只是坐在那里什么都不做.当我想升级部分或全部网站时,我只需重命名该文件并删除"x"前缀(这通常通过FTP完成).这会关闭我的网站,我进行升级,然后用"x"前缀重命名文件!

2> Mark Richman..:

确保app_offline.htm文件的长度至少为512个字节.零字节的app_offline.htm将不起作用.

更新:较新版本的ASP.NET/IIS可能比我第一次写这篇文章时表现得更好.

更新2:如果您使用的是ASP.NET MVC,请将以下内容添加到web.config:



    
        
    


通过将我的web.config完全替换为上述内容,我只能使我的MVC网站进入应用离线模式

3> Jonesome Rei..:

请注意,这在IIS 6和7.x以及.NET 2,3和4.x上的行为相同.

另请注意,当存在app_offline.htm时,IIS将返回此http状态代码:

HTTP/1.1 503 Service Unavailable

这完全是设计的.这允许您的负载均衡器(或其他)看到服务器脱机.


@Luke:为什么503响应有用的一个更好的例子:谷歌的网络抓取工具最好知道你的网站目前已经关闭,而不是决定索引你的"网站已关闭"内容(并将你的网站标记为有大量重复内容).此外,如果您的CDN可以检测到您的来源已关闭,从而避免缓存您的内容,这可能会有所帮助.

4> Jeremy A. We..:

可能的许可问题

我知道这篇文章相当陈旧,但我遇到了类似的问题,我的文件拼写正确.

我最初在另一个位置创建了app_offline.htm文件,然后将其移动到我的应用程序的根目录.由于我的设置,我有一个权限问题.

该网站表现得好像不在那里.在根目录中创建文件而不是移动它,解决了我的问题.(或者您可以在属性 - >安全性中修复权限)

希望它可以帮助某人.

推荐阅读
李桂平2402851397
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有