C#怎么检测IIS上某个网站的访问状态是否正常

C#如何检测IIS上某个网站的访问状态是否正常?
C#怎么检测IIS上某个网站的访问状态是否正常
最近接到这么一个需求,让我写一个C#的小程序,监控某网站是否能正常访问,请问一般解决这个问题都是通过什么机制或者思路来检测网站是否可以正确访问呢?C#纯新手,完全没有概念……
------解决方案--------------------
你是监听固定的网站还是你服务器IIS上所有的网站?

如果是固定的网站 都有ip 那么直接ping下看返回值就行了

或者 downloadstring看源码 是不是404或者500

如果是你服务器上IIS的所有网站 还要看 你这程序是运行在本地还是服务器

如果是本地 你要通过身份验证查询服务器IIS所有网站的端口.

然后重复上面固定网站的动作.

如果是服务器 则没有身份验证的过程..

没有代码纯思路..具体自己百度
------解决方案--------------------
设置哦个定时器,定期访问网页就可以了,用HttpWebRequest或者WebClient都可以。
------解决方案--------------------
监听一般就是看看还能不能访问,用WebRequest,简单得很
------解决方案--------------------
引用:
Quote: 引用:

设置哦个定时器,定期访问网页就可以了,用HttpWebRequest或者WebClient都可以。

感谢回答,检测工具已经完成了,但遇到了问题。WebRequest请求本机的IIS网页,也就是localhost的时候,是正常的,但是一旦换成非本机IIS,不管是局域网还是外网,都会请求几次后就不再有response,直接这次执行就消失了,我是用一个线程来跑的,正常运行几次之后,利用调试能够观察出,跑完webrequest之后,webresponse.getResponse()根本就没执行,然后这个线程的这次运行就结束了。是不是IIS有相关的设置来阻隔此请求或者是有什么其他的原因?

附上请求代码
 public bool getUrltoHtml(string Url)
        {
            try
            {
                System.Net.WebRequest wReq = System.Net.WebRequest.Create(Url);
                System.Net.WebResponse wResp = wReq.GetResponse();
                return true;
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
                return false;
            }
        }


这个不太应该,IIS没有想过设置。
是不是你的线程出了什么问题,试一试不同线程,直接在主线程里面调用线程函数。