|
|
|
|
|
前幾天在一個(gè)IIS6.0上配置兩個(gè)網(wǎng)站,本以為很簡(jiǎn)單,因?yàn)榕渲昧?0多年,非常熟悉了,但是當(dāng)配置完畢運(yùn)行后,卻出現(xiàn)了從沒(méi)遇到過(guò)的問(wèn)題:兩個(gè)網(wǎng)站不能同時(shí)運(yùn)行,當(dāng)先訪問(wèn)A站,再訪問(wèn)B站時(shí)就報(bào)應(yīng)用程序錯(cuò)誤,反之,重啟IIS后,先訪問(wèn)B站,那么再訪問(wèn)A站就報(bào)應(yīng)用程序錯(cuò)誤。
為什么兩個(gè)網(wǎng)站不能共存?
兩個(gè)網(wǎng)站一個(gè)使用.net2.0環(huán)境,一個(gè)使用.net4.0環(huán)境,難道不能這樣?但是我想到虛擬主機(jī)不都允許自主切換.net版本嗎?這說(shuō)明兩個(gè)環(huán)境是可以同時(shí)運(yùn)行的。
使用獨(dú)立應(yīng)用程序池解決問(wèn)題
找不出原因的情況下,就是進(jìn)行各種嘗試,碰運(yùn)氣了。難道兩個(gè)不同運(yùn)行環(huán)境的網(wǎng)站不能共用一個(gè)應(yīng)用程序池?我于是新建一個(gè)應(yīng)用程序池,這樣兩個(gè)網(wǎng)站就分別獨(dú)立使用一個(gè)應(yīng)用程序池,配置完畢后,問(wèn)題終于得意解決。
兩個(gè)網(wǎng)站獨(dú)立使用一個(gè)應(yīng)用程序池
如何創(chuàng)建和為網(wǎng)站指派應(yīng)用程序池
如果你還不知怎樣創(chuàng)建和指派應(yīng)用程序池,請(qǐng)繼續(xù)往下看。
IIS應(yīng)用程序池詳解
什么是應(yīng)用程序池呢?這是微軟的一個(gè)全新概念:應(yīng)用程序池是將一個(gè)或多個(gè)應(yīng)用程序鏈接到一個(gè)或多個(gè)工作進(jìn)程集合的配置。因?yàn)閼?yīng)用程序池中的應(yīng)用程序與其他應(yīng)用程序被工作進(jìn)程邊界分隔,所以某個(gè)應(yīng)用程序池中的應(yīng)用程序不會(huì)受到其他應(yīng)用程序池中應(yīng)用程序所產(chǎn)生的問(wèn)題的影響。
Windows 2003同時(shí)支持兩種工作模式,默認(rèn)為ISS 6.0工作進(jìn)程隔離模式。工作進(jìn)程隔離模式防止一個(gè)應(yīng)用程序或站點(diǎn)停止了而影響另一個(gè)應(yīng)用程序或站點(diǎn),大大增強(qiáng)了IIS的可靠性。那么如何設(shè)置兩種工作模式呢?
啟動(dòng)IIS管理器,右擊網(wǎng)站,選擇“屬性”,打開屬性對(duì)話框。
在IIS 6.0工作進(jìn)程隔離模式下,所有的應(yīng)用程序代碼都在隔離環(huán)境中運(yùn)行,它們是如何進(jìn)行隔離的呢?Windows 2003新增了應(yīng)用程序池,工作進(jìn)程隔離模式允許客戶創(chuàng)建多個(gè)應(yīng)用程序池,每個(gè)應(yīng)用程序池都可以有不同的配置。因?yàn)檫@些應(yīng)用程序池直接從內(nèi)核(而非WWW服務(wù))接收它們的請(qǐng)求,所以性能和可靠性得到了增強(qiáng)。要隔離運(yùn)行在同一臺(tái)計(jì)算機(jī)上但屬于不同網(wǎng)站的Web應(yīng)用程序,需要為每個(gè)網(wǎng)站創(chuàng)建單獨(dú)的應(yīng)用程序池。
創(chuàng)建應(yīng)用程序池
在IIS管理器中,展開“本地計(jì)算機(jī)”,右鍵單擊“應(yīng)用程序池”,選擇新建“應(yīng)用程序池” 。
新建應(yīng)用程序池
“應(yīng)用程序池名稱”框中,輸入新的應(yīng)用程序池名稱。如果在“應(yīng)用程序池 ID”框中出現(xiàn)的 ID (如:AppPool #1)不是您想要的,可進(jìn)行重命名。如果您單擊了“將現(xiàn)有應(yīng)用程序池作為模板”,請(qǐng)?jiān)?ldquo;應(yīng)用程序池名稱”框中右鍵單擊想要用來(lái)作為模板的應(yīng)用程序池。
輸入應(yīng)用程序池名稱
最后單擊“確定”按鈕。
指派應(yīng)用程序池
新建了應(yīng)用程序后,需要指派給網(wǎng)站。
在 IIS 管理器中,右鍵單擊您要為其指派應(yīng)用程序池的應(yīng)用程序,然后單擊“屬性”。
設(shè)置網(wǎng)站屬性
單擊“主目錄”選項(xiàng)卡,在“應(yīng)用程序池”列表框中,選擇您想要為其指派的應(yīng)用程序池的名稱。
指定應(yīng)用程序池
最后單擊“確定”。