有一个网站,当用户超过1000时,会出现一个名为
的错误Service unavailable
当系统发出“服务不可用”错误时,我想显示文本。我该怎么办?
(app_offline.htm可以使用,但我想自动化)
答案 0 :(得分:1)
如果您正在处理ASP.NET,您可以使用自定义文本创建自己的html页面,然后配置web.config文件,更具体地说是customErrors标记,以便在显示时显示该文件503 Http代码被发送到客户端(也就是说,假设IIS正在向浏览器发送503代码)。
希望有所帮助。
干杯。
答案 1 :(得分:0)
这个问题可能有一些可能的原因,
有一篇关于One more reason problem that causes the 'Service Unavailable' error from IIS的有趣文章,可能会让您更好地理解。
答案 2 :(得分:0)
当您声明您正在使用ASP.NET时,您应该使用Page_Error
事件处理程序来查看陷阱错误。
由于这往往是在一个项目和许多其他项目中重复代码,我使用一个继承自System.Web.UI.Page
的基类并在那里填写处理程序。
例如,所有页面都基于MyBasePage
protected void Page_Error(object sender, EventArgs e)
{
Exception ex = Server.GetLastError();
this.ErrorRedirect(ex, false);
}
/// <summary>
/// Redirects to a custom error page
/// </summary>
/// <param name="ex">the caught exception</param>
/// <param name="errorCaught">true if the error is handled within a try catch block, false otherwise</param>
protected void ErrorRedirect(Exception ex, bool errorCaught)
{
/* some logging code here for use by support team */
if (ex.GetType().FullName == "BusinessObjects.BrokenRulesException" )
{
Response.Redirect("ContactHelpdesk.aspx");
}
if (errorCaught)
{
Response.Redirect("ContactHelpdesk.aspx");
}
else
{
Response.Redirect("Error.aspx");
}
}
在此代码中,当我的用户输入的模型数据与指定的规则不匹配时,会抛出“BusinessObjects.BrokenRulesException”,例如邮政编码,密码等,在这种情况下弹出用户帮助页面。
在您的情况下,您可能会查看错误,可能会弹出错误页面。