簡體   English   中英

IIS應用程序池標識

[英]IIS Application pool identity

我正在嘗試從Yahoo Finance獲得數據提要。 我正在使用以下代碼執行此操作:

System.Net.WebRequest request = System.Net.WebRequest.Create(http://download.finance.yahoo.com/download/quotes.csv?format=sl&ext=.csv&symbols=^ftse,^ftmc,^ftas,^ftt1x,^dJA);
request.UseDefaultCredentials = true;

// set properties of the request
using (System.Net.WebResponse response = request.GetResponse())
{
    using (System.IO.StreamReader reader = new System.IO.StreamReader(response.GetResponseStream()))
    {
        return reader.ReadToEnd();
    }
}

我已將此代碼放入控制台應用程序,並在輸出上使用Console.WriteLine接收到我所需的信息。 我已經使用“運行方式..”命令使用特定的域帳戶來執行此操作。

當我從頁面加載中使用此代碼時,收到以下錯誤消息“無法建立連接,因為目標計算機主動拒絕它76.13.114.90:80”。

這似乎表明呼叫正到達yahoo(是真的嗎?),並且缺少某些內容。

這表明控制台應用程序和應用程序池之間的調用存在身份差異。

環境是:Windows Server 2003,IIS 6.0,.net 4.0

“目標計算機主動拒絕它”表示TCP連接本身未成功。 這可能是由於以下事實:在IIS下運行時,代理設置與在控制台中運行時所應用的設置不同。

您可以通過在請求上設置WebProxy來解決此問題,該WebProxy指向環境中正在使用的代理服務器。

是的,活動拒絕表示目標計算機正在接收請求,並且標頭中的信息不正確或不足以處理請求。 如果您必須在控制台中使用“運行方式”命令運行此調用,則很可能是應用程序池的標識用戶沒有適當的權限或用戶名。 您可以嘗試將身份用戶更改為此特定的域帳戶,以查看是否可以緩解此問題,但是您可能必須將此特定功能隔離到其自己的應用程序池中,以保護網站的其余部分免受此規范的影響。

暫無
暫無

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

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