【发布时间】:2009-05-26 18:55:54
【问题描述】:
我开发了我的第一个 Web 应用程序,令人惊讶的是,它变得非常流行。
由于该网站现已上线,我很难进行一些更改,因为担心有些人仍然登录并正在使用该应用程序。
我希望避免使用重复的 Web 应用程序实例进行测试。
有没有办法让网站进入“维护模式”,只有我可以访问它?就像重定向到包含一些信息的页面,告诉它处于维护模式。
谢谢。 :-)
【问题讨论】:
标签: asp.net maintenance
我开发了我的第一个 Web 应用程序,令人惊讶的是,它变得非常流行。
由于该网站现已上线,我很难进行一些更改,因为担心有些人仍然登录并正在使用该应用程序。
我希望避免使用重复的 Web 应用程序实例进行测试。
有没有办法让网站进入“维护模式”,只有我可以访问它?就像重定向到包含一些信息的页面,告诉它处于维护模式。
谢谢。 :-)
【问题讨论】:
标签: asp.net maintenance
我希望避免重复 Web 应用程序的实例 测试。
这就是你的问题。除了最琐碎的站点之外,您应该有一个登台或开发实例。您应该使用源代码管理并有一个脚本来更新主实例。
【讨论】:
您只需将一个名为 app_offline.htm 的文件放到您网站的根目录中,ASP.NET 就会自动将所有流量路由到该页面。该文件可以包含任何您希望表明您的网站因维护而在短时间内关闭的 HTML。
更多信息请阅读App_Offline.htm and working around the "IE Friendly Errors" feature:
app_offline.htm 的工作方式是 你把这个文件放在 应用。当 ASP.NET 看到它时,它 将关闭应用程序域 应用程序(而不是重新启动它 请求),而是发回 app_offline.htm 文件的内容 响应所有新动态 申请的请求。什么时候 您已完成网站更新,只需 删除文件,它会回来 在线。
【讨论】:
在 ASP.NET 中没有这样的内置功能,除了 app_offline.htm,它不能完全满足您的需求,因为即使您也会被拒绝访问该站点。您必须自己构建它,但最好在路由器和负载均衡器级别而不是在应用程序级别完成。当然,这取决于您的网络架构。
【讨论】:
除了构建您网站的开发副本以构建补丁和修复程序之外,您不能提前几天宣布站点关闭进行维护吗?我不是网络程序员,但您可能想了解Hattrick,一个流行的在线足球管理,为维护他们的网站做了什么。他们在用户登录后使用主页上的通知系统,宣布何时进行维护(通常在欧洲的深夜,大部分玩家和所有开发人员都位于),然后他们关闭了网站大概几个小时。当他们关闭网站时,他们会发布一个页面,使用与网站其余部分相同的样式,并提供它何时重新启动和运行的估计。简单、优雅,再加上长期的预警,它似乎可以很好地安抚用户群。
让用户提前知道计划进行维护,并让他们了解维护的目的,大多数人将能够适应停机时间。没有什么比故意访问一个在 10 到 20 分钟前启动并运行的 Web 应用程序发现它突然不可用并停止维护更令人沮丧的了。
【讨论】:
试试app_offline.htm??
【讨论】:
什么版本的 ASP.NET?我敢肯定还有一百万种更优雅的方法可以做到这一点,但您可以更改 IIS 中的默认文档以重定向到 Maint.html(或类似文件)。
【讨论】: