簡體   English   中英

以編程方式檢查IIS7啟動畫面

[英]Programmatically check for IIS7 splash screen

我有一個ASP.Net 3.5 Web應用程序(C#),我需要以編程方式檢查我們的另一個站點(不是ASP.Net)是否啟動並運行。 目前,我有一個方法,使用以下代碼檢查StatusCode為200.我遇到的問題是,出現的IIS7啟動頁面返回狀態代碼200,我沒有看到任何其他內容響應對象,允許我驗證我們期望實際顯示的頁面。 我想避免得到回復並使用StreamReader只是在頁面上查找div以驗證它是否有效(如果可能),因為它們(類似地)在鏈接中。

        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(urlToCheck);
        request.AllowAutoRedirect = true;

        HttpWebResponse response;
        try
        {
            response = (HttpWebResponse)request.GetResponse();

            if (response.StatusCode == HttpStatusCode.OK)
            {
                return true;
            }
            return false;
        }
        catch (Exception)
        {
            return false;
        }

任何幫助是極大的贊賞。

只需閱讀它已存在的Response並等待!

Stream s = response.GetResponseStream();
StreamReader r = new StreamReader(s);
string html = r.ReadToEnd();

// IIS7
if(html.Contains(@"<div id=""container"">
<a href=""http://go.microsoft.com/fwlink/?linkid=66138&amp;clcid=0x409""><img src=""welcome.png"" alt=""IIS7"" width=""571"" height=""411""></a>
</div>") {


}

調查其他應用程序返回的標頭。 與IIS啟動畫面相比,它最有可能會有一些額外的標題。 例如,它可能指定Cache-Control 如果您的回復沒有該標題,則可以認為它是啟動畫面。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM