主頁 > 知識(shí)庫 > asp.net無法獲取iis目錄的問題解決方法

asp.net無法獲取iis目錄的問題解決方法

熱門標(biāo)簽:廣州銷售外呼系統(tǒng)定制 云狐人工智能電話機(jī)器人 地圖標(biāo)注多少錢一張 宿遷智能外呼系統(tǒng)排名 ai電銷機(jī)器人對(duì)貸款有幫助嗎 怎樣給陜西地圖標(biāo)注顏色 福州人工智能電銷機(jī)器人加盟 電銷機(jī)器人 數(shù)據(jù) 400電話辦理信任翰諾科技

如果你有一個(gè)需要偶爾發(fā)送郵件的Asp.Net的網(wǎng)站,可能會(huì)有代碼長的和下面的很像:

復(fù)制代碼 代碼如下:

//這是簡寫,并非實(shí)際項(xiàng)目代碼
public void Send(string from, string to, string subject, string body)
{
    var msgMail = new MailMessage(from, to, subject, body);
    msgMail.IsBodyHtml = true;
    var server = new SmtpClient("localhost");
    server.DeliveryMethod = SmtpDeliveryMethod.PickupDirectoryFromIis;
    server.UseDefaultCredentials = true;
    server.Send(msgMail);
}

可能它曾經(jīng)工作,但是當(dāng)你切換到或初步部署到新的Windows 2008 服務(wù)器時(shí),你會(huì)遇到錯(cuò)誤提示信息"Cannot get IIS Pickup Directory!"

現(xiàn)在,我經(jīng)常稱呼自己為世界上最厲害的系統(tǒng)管理員。這不是我研究的方向。我并不非常擅長,但是有時(shí)在實(shí)際工作中我不得不面對(duì)和解決這些問題以獲取報(bào)酬。

1)  SMTP服務(wù)是否安裝?

你的Web服務(wù)器或許還沒有安裝SMTP服務(wù),所以進(jìn)入服務(wù)管理中確定SMTP服務(wù)在功能列表中。如果不在,就需要你添加上去。

2) SMTP是否已配置?

僅僅確定SMTP服務(wù)已經(jīng)安裝是不夠的。首先,當(dāng)你服務(wù)器啟動(dòng)時(shí)(我曾經(jīng)遇到些客戶端軟件安裝前可以發(fā)送郵件,但是之后就不可以了,他們重啟了服務(wù)器,而Mail服務(wù)沒啟動(dòng),就這么簡單),確保你的SMTP服務(wù)也跟著自動(dòng)啟動(dòng)。進(jìn)入服務(wù),確保SMTP服務(wù)在那里,并且已經(jīng)啟動(dòng),啟動(dòng)類型也為自動(dòng)。

 

然后,你應(yīng)該配置SMTP服務(wù)——說句實(shí)話,我對(duì)此知道的不多,所以我就不詳細(xì)解釋了,但是你需要知道SMTP仍然是IIS6.0的一部分,所以你可以在IIS6.0的管理界面找到它。一個(gè)快速突破點(diǎn),因?yàn)樗赡懿环狭艘恍┙邮锗]件服務(wù)器需要一個(gè)完整的合格域名的要求,而你的服務(wù)器可能只有一個(gè)被嚴(yán)格被限制使用的簡單域名,比如像“Server15”之類的,所以在SMTP屬性中,Delivery標(biāo)簽下 ,點(diǎn)擊添加按鈕,給服務(wù)器一個(gè)真正的完整的滿足要求的域名。

3) 防火墻是打開的嗎?

你的一些操作有可能與防火墻沖突,所以現(xiàn)在是個(gè)好時(shí)機(jī)去排除SMTP安裝故障。你可以通過Telnet本機(jī)通過端口25,手動(dòng)給自己發(fā)個(gè)簡單的郵件。下面一個(gè)例子可以照著做。

復(fù)制代碼 代碼如下:

telnet localhost 25
HELO somehost.com
MAIL FROM: yourname@somedomain.com
RCPT TO: the_to_address@somedomain.com
DATA
Subject: the subject of the mail
Blah blah blah message body


點(diǎn)擊回車鍵,過會(huì)進(jìn)入發(fā)件箱 如果你不能連接,或者郵件不能送達(dá),這里還有一些其他問題需要你解決,因?yàn)榉阑饓κ遣粫?huì)影響拾取目錄的獲取。

4) IIS是否有權(quán)限獲取元數(shù)據(jù)(拾取目錄信息)

這里我們將會(huì)遇到實(shí)際的出錯(cuò)原因--你在網(wǎng)站跑的程序也許沒有權(quán)限獲取保存著拾取目錄名的IIS 元數(shù)據(jù)(metabase),這通常就是引起錯(cuò)誤的原因。

你需要下載IIS 6.0 資源包。里面有你需要用到的“metaacl.vbs”腳本而我不需要的。[點(diǎn)我下載]

下載并安裝,然后運(yùn)行Metabase Explorer(你可以搜索它,我的在“Program Files (x86)\IIS Resources\Metabase Explorer”目錄下)。 你應(yīng)該在你的IIS進(jìn)程為SmtpSvc服務(wù)添加讀權(quán)限(我為IIS_IUSRS組添加了權(quán)限,在配置中查看為你工作的是否有權(quán)限)。

5) IIS是否有權(quán)限寫入拾取目錄

下面這步只是補(bǔ)充,因?yàn)槟阍谙麓问褂镁W(wǎng)站來發(fā)送郵件可能會(huì)遇到權(quán)限錯(cuò)誤。這時(shí),你需要為你的IIS用戶添加寫入拾取目錄的權(quán)限(對(duì)我而言,我為“IIS_IUSES”添加了拾取目錄“c:\inetpub\mailroot”的寫入權(quán)限)。

這樣不管怎樣,使它為我工作了,但是對(duì)任意的服務(wù)器來說,可能因?yàn)槲尹c(diǎn)擊了某些地方對(duì)程序有著關(guān)鍵作用的一些有魔力的多選框,所以如果你仍有問題,或者知道這些問題的答案,請(qǐng)?jiān)谠u(píng)論中提出,正如我所提到的,我可能修改了一些自己沒注意到的地方,導(dǎo)致可以發(fā)送郵件。如有不足,我將及時(shí)改正。

標(biāo)簽:延安 綿陽 大興安嶺 新疆 黃南 宜春 曲靖 焦作

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《asp.net無法獲取iis目錄的問題解決方法》,本文關(guān)鍵詞  asp.net,無法,獲取,iis,目錄,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《asp.net無法獲取iis目錄的問題解決方法》相關(guān)的同類信息!
  • 本頁收集關(guān)于asp.net無法獲取iis目錄的問題解決方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章