繁体   English   中英

检查网站是否在线使用ASP.NET C#?

[英]Check if website is online with ASP.NET C#?

我想知道如何使用C#检查网站是离线还是在线?

尝试通过HTTP-GET请求使用HttpWebClient来访问URL。 为刚刚创建的HttpWebClient调用GetResponse()方法。 检查响应中的HTTP状态代码。

您可以在此处找到所有HTTP状态代码的列表。 如果您的请求状态代码是从5 [5xx]开始,这意味着该站点处于脱机状态。 还有其他代码也可以告诉您网站是否处于脱机状态或不可用。您可以将代码与整个列表中的首选代码进行比较。

//Code Example

HttpWebRequest httpReq = (HttpWebRequest)WebRequest.Create("http://www.stackoverflow.com");
httpReq.AllowAutoRedirect = false;

HttpWebResponse httpRes = (HttpWebResponse)httpReq.GetResponse();

if (httpRes.StatusCode==HttpStatusCode.NotFound) 
{
   // Code for NotFound resources goes here.
}

// Close the response.
httpRes.Close();

首先,定义“在线”和“离线”。 但是,如果你的代码隐藏代码运行,您的网站在线。

对于我的网络应用程序,我使用名为“脱机”的设置,管理员可以设置开启/关闭。 然后我可以通过编程方式检查该设置。 我使用此脱机设置,向用户显示友好的维护信息。 另外,您可以使用App_Offline.htm,参考: http ://www.15seconds.com/issue/061207.htm

http://weblogs.asp.net/scottgu/archive/2005/10/06/426755.aspx

如果您指的是控制IIS的联机/脱机状态,则可以使用自定义Web事件(应用程序生命周期事件)控制此状态

http://support.microsoft.com/kb/893664

http://msdn.microsoft.com/en-us/library/aa479026.aspx

您可以使用Pingdom.com及其API。 检查本页底部的'Alerter for Pingdom API'的源代码

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM