如何ping部署在iis中的网站/ip



我需要创建一个网站,用于监控/检查部署在iis上的内部应用程序的连接,它就像是我们开发的内部网站的链接列表。问题是,我如何才能检查网站是否已启动并运行?如果网站关闭,我该如何检查?我将简单地显示我们系统的链接,并根据其状态为其着色,绿色表示向上,红色表示向下或有错误。。希望得到你的建议。示例代码将受到赞赏。

只需从该服务器加载任何内容,如果它加载了您的网站,并且正在运行,如果它没有加载,则只生成一个错误或显示红色

最简单的方法是运行一个windows服务或计划任务,该任务根据网站列表执行WebRequest并检查状态代码。

如果返回200的状态代码,则显示绿色。任何其他内容(4xx、5xx、超时)都显示为红色。让服务将结果存储在数据库中,并从该数据库中读取"红绿"页面。

这将是一个通用的、一刀切的解决方案。它可能不适用于所有网站,因为有些网站可能具有基本身份验证,在这种情况下,您的监视器将错误地记录网站已关闭。因此,您需要根据站点存储元数据,并执行基本身份验证(或任何其他业务逻辑)来确定它是启动还是关闭。

如果您可以访问要监控的网站,那么我认为最简单的方法是在您要监控的站点上放置一个状态页,以便由您的服务进行轮询。这样,如果网站启动,您可以通过阅读页面内容从中获得更高级的状态信息。

如果你只想检查http状态,那么只需访问网站上的任何页面(最好是小页面!)并检查响应状态代码。

类似的东西

                // prepare the web page we will be asking for
                HttpWebRequest request = (HttpWebRequest)
                    WebRequest.Create(Url);
                //if (AuthRequired())
                //    request.Credentials = new NetworkCredential(Username, Password);
                // execute the request
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();

然后你可以阅读回复。StatusCode

最新更新