綠色資(zī)源網:您身邊最(zuì)放心(xīn)的安全下載站(zhàn)! 最新軟件|熱(rè)門排行|軟件分類|軟(ruǎn)件專題|廠(chǎng)商大全

綠色資源網

技術教程
您的位置:首頁服務器類Web服務器 → 64位windows 2008 係統(tǒng)下IIS7 加載 ISAPI 失敗

64位windows 2008 係統(tǒng)下IIS7 加載(zǎi) ISAPI 失敗

我要評論 2013/01/13 11:11:08 來源(yuán):綠色資源網(wǎng) 編輯:www.ynaad.com [ ] 評論:0 點擊:524次

症狀

公司一台數據庫服務器上部署了IIS網站(IIS7),利用Sql Server Analysis Services的msmdpump.dll組(zǔ)件,實現了通過HTTP層來訪問Analysis Services(MSAS不支持HTTP遠程訪問,非HTTP的遠程訪問也一直(zhí)沒(méi)成功過)。運行狀況一直良好,最近(jìn)突然罷工。Debug發現在建立連接的時候總是拋出“The Connection either timed out or was lost”。

診斷(duàn)

嚐試用企業管理器直(zhí)接(jiē)連接Analysis Services,成功,數據(jù)訪問也正常,說明(míng)Analysis Services服務運作正常。那看(kàn)來問題是出在了IIS這一層。

直接在瀏覽器中通過http://machinename/olap/msmdpump.dll去訪問的時候,會(huì)彈出一個保存文件(jiàn)的對話框。正常情況下,服務器會返回500,因為沒有數據輸入。現在(zài)彈出(chū)保存文件的對話框,說明IIS把這個dll資源當作一(yī)個普通文件來對待(dài)了,而不是調用ISAPI處理器來處理。

細看了網(wǎng)站的配置(zhì),似乎沒有問題,重新部署了一(yī)個網站,重新配置了ISAPI處理器映射,問題依舊出現。

自己探索(suǒ)了很久,未果,Google了很久,一篇文(wén)章(IIS7 - Running 32-bit and 64-bit ASP.NET versions at the same time on different worker processes)提醒(xǐng)了我。這篇文章講的(de)是(shì)如何在不同的應用程序池進程上同時使用(yòng)32位和64位的Asp.Net。

公司服務器出於性能考慮,用了64位係(xì)統。相應的(de)msmdpump.dll文件也是64位的,但(dàn)IIS的應用程序池進程是多少位的,我倒還真沒考慮過。任務管理器一看,隻有一個"w3wp.exe * 32”,果然是32位的。那問題(tí)的原因(yīn)應該是,32位的應用程序(xù)池無法加載64位的Isapi處理器

知道了問題所(suǒ)在,解決方法也很簡單,啟動一個64位的應用程序池就行了。打開應(yīng)用程序池的高(gāo)級設置,找到了“啟用32位應用程序(enable32bitAppOnWin64)”的設置,將其從原來的True改成(chéng)False(默認值為False)。這個選項的作用就(jiù)是允(yǔn)許在64位操作係統(tǒng)上,以(yǐ)32位的應用程序池去加載(zǎi)32位的程序。

之所以(yǐ)會突然出(chū)現這個問題,是因(yīn)為IIS的機器配置文件ApplicationHost.config文件中,全局應用程序池的enable32bitAppOnWin64默認值被(bèi)意外修(xiū)改為True。而我部署的IIS網站,由於沒有顯式設置此選項,因此會繼(jì)承ApplicationHost.config文件中的默認值。

關鍵詞:IIS7

閱讀本文後您有什麽感想? 已有 人給出評價!

  • 0 歡迎喜歡
  • 0 白(bái)癡
  • 0 拜托
  • 0 哇
  • 0 加油(yóu)
  • 0 鄙視
免费人欧美成又黄又爽的视频丨一本色道久久88综合日韩精品丨国产专区日韩精品欧美色丨午夜无遮挡男女啪啪视频丨国产欧美日韩综合精品一区二区丨亚洲精品无码不卡在线播HE丨亚洲精品国产精品国自产观看丨日韩国产高清av不卡