Win2003平臺(tái)上jsp虛擬主機(jī)環(huán)境的架設(shè)(IIS6+J2SDK+resin)
平臺(tái)上jsp虛擬主機(jī)環(huán)境的架設(shè)——windows2003+iis6+j2sdk1.4.2+resin2.1.16
.abu. at patching.net
今天,我生日,自己記性也不太好,順手寫一篇文章,省得不小心忘了。
我通常在windows上工作,這次要架設(shè)jsp虛擬主機(jī)運(yùn)行環(huán)境,查看了一下網(wǎng)上所能找到的資料,基本沒有能用的,因?yàn)槲倚枰氖悄軌蚴筰is同時(shí)既支持.asp又支持.jsp而且又可以做虛擬主機(jī)。
互相隔離,且運(yùn)行在80端口。反正搜索出一堆,參考一下,自己搞吧。
一個(gè)一個(gè)找,這里面需要很多東西,不要怕麻煩,先準(zhǔn)備好:
1、操作系統(tǒng),我工作的環(huán)境是window2003中文版。
2、web服務(wù)器,我使用的是系統(tǒng)自帶的iis6。
3、java處理平臺(tái),這里用的是java 2 sdk,se v1.4.2_06版。
4、jsp/servlets運(yùn)行平臺(tái),我選擇的是resin 2.1.16版,因?yàn)閾?jù)說resin比tomcat運(yùn)行效率高10倍以上,而關(guān)于
resin的版本需要注意的是,我聽說resin 2.x屬于免費(fèi)版本,而3.x則是收費(fèi)版本,所以選擇resin 2.1.16版。呵呵。
沒東西了,開始?!?/P>
一、安裝java 2 sdk
不做java開發(fā),安裝一個(gè)標(biāo)準(zhǔn)環(huán)境就可以了,去java.sun.com,網(wǎng)頁右邊有快速導(dǎo)航,直接去下載好了,有中文版的。
我的安裝文件名是:j2sdk-1_4_2_06-windows-i586-p.exe ,不提供url了,自己找去。
運(yùn)行安裝,出現(xiàn)界面:
然后選擇安裝路徑,全部安裝好,自己操作,很簡(jiǎn)單的。
我裝在c:\jdk目錄下。
接下來設(shè)置環(huán)境變量,這一步很重要,別忘了:
java_home = c:\jdk
classpath = c:\jdk\lib\tools.jar;c:\jdk\lib\dt.jar
path 路徑里添加 c:\jdk;c:\jdk\bin
二、安裝jsp/servlets運(yùn)行平臺(tái),resin
哪里找?下載嘛,去www.caucho.com,上去就找download,下載最新版本就好了。
我用的文件名:resin-2.1.16.zip,解壓縮到c:\resin目錄
記得立即做好下面這一步,設(shè)置resin的環(huán)境變量,我總是在這里忘了,最后系統(tǒng)找不到resin在哪里,當(dāng)然不成功了。
resin_home = c:\resin
接下來我們繼續(xù),運(yùn)行c:\resin\bin\httpd.exe
這時(shí)候等待,然后出來了2個(gè)窗口,仔細(xì)看清楚。需要注意的是,啟動(dòng)resin web 服務(wù)器和關(guān)閉服務(wù)器
都要使用小的這個(gè)窗口來操作,不要直接把后面的那個(gè)大的窗口給咔嚓掉哦。
這時(shí)候,resin服務(wù)的終端輸出上可以看到,http listening to *:8080
這表明resin自帶的web服務(wù)已經(jīng)運(yùn)行在本機(jī)的8080端口上了。
驗(yàn)證一下:
到這里,resin服務(wù)器已經(jīng)架設(shè)完畢,如果只自己做測(cè)試jsp或者服務(wù)器跑這么一個(gè)網(wǎng)站的話
完全足夠用了。當(dāng)然,總是訪問8080端口也不是很方便,自己可以手工修改一下。
打開c:\resin\conf\resin.ini文件:
查找<http port='8080'/>,這個(gè)是修改端口的
修改站點(diǎn)默認(rèn)目錄也有2種改法,現(xiàn)在系統(tǒng)用的是c:\resin\doc下的內(nèi)容
在配置文件里面只要寫相對(duì)路徑doc就可以了。
也就是<doc-dir>doc</doc-dir>中間的doc這個(gè)地方。
看見沒有?
是的,另外<http port='8080'/>這里修改端口就可以了。
但是、、、 呵呵,誰讓我還不滿足呢。
三、將resin掛接進(jìn)iis
我先把iis6裝起來,win2003的好處就是不用的東西平時(shí)全都不開,呵呵,真不錯(cuò)。
按步驟進(jìn)行:
在c盤建立c:\web\jspsite目錄。這個(gè)就是jsp網(wǎng)站的主目錄。
然后在目錄下創(chuàng)建一個(gè)測(cè)試用的test.jsp文件。
輸入以下內(nèi)容:
<html>
<head>
<title>jsp simple example</title>
</head>
<body>
<% out.println("hello, world!"); %>
</body>
</html>
接著,在c盤建立c:\web\dllrun目錄。
把c:\resin\libexec目錄下的isapi_srun.dll 復(fù)制到c:\web\dllrun目錄下。
至于為什么要把dll復(fù)制過去,原因就是jsp的解析是要通過resin提供的第三方的isapi接口進(jìn)行的。
平時(shí)客戶端提交url的時(shí)候,只要發(fā)現(xiàn)是.jsp,iis將把.jsp丟給iis_srun.dll來執(zhí)行。
后面這個(gè)目錄還要再用,繼續(xù)往下走:
啟動(dòng)iis6.0,首先在web服務(wù)擴(kuò)展里面添加允許.jsp后綴的web服務(wù)擴(kuò)展。
擴(kuò)展名什么都隨意填寫,我這里輸入jsp。
這是windows2003里面iis6.0增強(qiáng)的安全功能,你可以允許服務(wù)器上有哪些服務(wù)擴(kuò)展是允許的,哪些是禁止的。
允許jsp。
為了看得更清楚,我們建立一個(gè)新的站點(diǎn)。
打開站點(diǎn)屬性,在isapi篩選器里面添加新的篩選器,名稱隨意,這里輸入jsp,
再輸入可執(zhí)行文件,也就是剛才說的resin掛接iis用的isapi過濾器,輸入
c:\web\dllrun\isapi_srun.dll
確認(rèn)后,要注意一點(diǎn),就是剛剛掛接進(jìn)去的dll不會(huì)立即生效,優(yōu)先級(jí)也顯示*未知*
沒有關(guān)系,不用理會(huì)。繼續(xù)往下走。
下面我們需要做的就是比較重要也很復(fù)雜的事情了,也就是修改resin的配置文件。
仔細(xì)研究c:\resin\conf\samples下的配置文件的參考,
尤其是要研究iis.conf 和 virtual_host.conf
下面說一下我的計(jì)劃,我計(jì)劃是這樣,建立一個(gè)帶主機(jī)名的網(wǎng)站,這樣來模擬真實(shí)服務(wù)器
環(huán)境中,虛擬主機(jī)的情況。
那么我計(jì)劃建立一個(gè)jsp網(wǎng)站,abu.com 指向我的ip 127.0.0.1
而127.0.0.1直接訪問,是iis默認(rèn)的asp網(wǎng)站。
如果這兩個(gè)都能訪問,那么表明,我們的目的已經(jīng)達(dá)到了。
為了能夠在本地實(shí)現(xiàn)訪問abu.com的時(shí)候能夠解析到127.0.0.1 我修改本機(jī)的hosts文件
接下來,我修改c:\resin\conf目錄下的配置文件resin.conf
這里非常關(guān)鍵,但其實(shí)最重要的就兩個(gè)地方。
將<doc-dir>注釋掉,將resin自帶的8080端口運(yùn)行的服務(wù)注釋掉<http port='8080'/>
加入<http-server app-dir='c:\resin\doc'> 這里的app-dir是缺省路徑,假如resin自帶的web
運(yùn)行的話,缺省就是這個(gè)目錄。
和下面這里:
仔細(xì)看<host>中間的這部分,這是建立虛擬主機(jī)的關(guān)鍵,每次增加虛擬主機(jī)就需要修改這個(gè)部分,
每個(gè)站點(diǎn)用<>括起來。
配置文件基本配好了。
下面添加一個(gè)resin.ini文件到先前建立的dllrun目錄
添加內(nèi)容
resinconfigserver localhost 6802
cauchostatus yes
意思就是當(dāng)調(diào)用isapi_srun.dll的時(shí)候讀取相關(guān)配置
回到iis里面,將主機(jī)頭名添加進(jìn)去。
給虛擬主機(jī)用戶添加賬號(hào)。
加入guests組
然后給對(duì)應(yīng)的目錄設(shè)定權(quán)限:
給c:\web\jspsite目錄添加剛才用戶的權(quán)限,注意需要給讀寫都給。
給c:\web\dllrun目錄剛才那個(gè)用戶的讀權(quán)限:
在iis6.0里面的應(yīng)用程序池中間添加一個(gè)新的池
名字叫jspapppool,然后給這個(gè)池 應(yīng)用程序池標(biāo)識(shí)給予system權(quán)限。
其實(shí)這里可以給更低一點(diǎn)的權(quán)限的,有心的朋友可以自己研究一下。
把jsp的網(wǎng)站加入到這個(gè)池中方便集中管理。
在jsp的網(wǎng)站上添加一個(gè)虛擬目錄,目錄名為scripts,并且給予可執(zhí)行的權(quán)限。
最后別忘了給這個(gè)網(wǎng)站的運(yùn)行權(quán)限設(shè)定為剛才的jsp_user用戶。
重啟resin,重啟iis。
檢查resin有沒有掛接進(jìn)iis的辦法就是看isapi篩選器
如果狀態(tài)是綠色箭頭,表示已經(jīng)被系統(tǒng)掛接成功。
然后瀏覽abu.com訪問test.jsp文件
而asp網(wǎng)站也同時(shí)可以運(yùn)行
搞定收工。
相關(guān)文章
訪問網(wǎng)站提示An error occurred on the server when processing the UR
這篇文章主要介紹了An error occurred on the server when processing the URL. Please contact the system administrator提示的解決方法2015-08-08服務(wù)器安全設(shè)置之 IIS用戶設(shè)置方法
服務(wù)器安全設(shè)置之 IIS用戶設(shè)置方法,其實(shí)各個(gè)網(wǎng)站獨(dú)立用戶才比較安全建議大家用虛擬主機(jī)管理軟件2012-07-07Windows 2008 IIS7.5中創(chuàng)建獨(dú)立賬號(hào)的FTP站點(diǎn)圖文教程
這篇文章主要介紹了Windows 2008 IIS7.5中創(chuàng)建獨(dú)立賬號(hào)的FTP站點(diǎn)圖文教程,IIS7.5的FTP功能已經(jīng)非常強(qiáng)大了,需要的朋友可以參考下2014-08-08IIS7.5下301重定向的設(shè)置方法(及偽靜態(tài)后301重定向出錯(cuò)案例)
301重定向,網(wǎng)絡(luò)上的知識(shí)已經(jīng)很多了,我在這第一次實(shí)踐過程中,出現(xiàn)了一個(gè)算是低級(jí)的錯(cuò)誤,但也比較典型,也許其它新手也會(huì)碰到,分享一下2013-08-08IIS報(bào)在服務(wù)器上找不到腳本語言''VBScript.encode''錯(cuò)誤解決方法
這篇文章主要介紹了IIS報(bào)在服務(wù)器上找不到腳本語言'VBScript.encode'錯(cuò)誤解決方法,其實(shí)這是一種服務(wù)器安全設(shè)置,一般虛擬主機(jī)都會(huì)禁用,需要的朋友可以參考下2014-07-07IIS7.5 無法驗(yàn)證對(duì)路徑問題的解決方法
最近研究2008 r2 iis7.5,為了安全跟2003一樣需要獨(dú)立用戶,結(jié)果提示無法驗(yàn)證對(duì)路徑,經(jīng)過排查終于發(fā)現(xiàn)了問題特分享下2014-12-12Win7 ASP連接數(shù)據(jù)庫“未找到提供程序.該程序可能未正確安裝”問題
今天調(diào)試了基于Access數(shù)據(jù)庫的ASP應(yīng)用,沒想到IIS7報(bào)錯(cuò),提示ADODB.Connection 錯(cuò)誤 '800a0e7a' 未找到提供程序。該程序可能未正確安裝2012-01-01LoadUserProfile 調(diào)用因下列錯(cuò)誤而宣告失敗: 拒絕訪問的常見解決方法
今天突然看到服務(wù)器出現(xiàn)這樣的錯(cuò)誤提示,拒絕訪問,肯定是權(quán)限問題,是哪里的權(quán)限問題呢。2011-01-01IIS做WEB服務(wù)器無法下載某些中文名文件的解決方法
文件名為2個(gè)、4個(gè)中文字時(shí)無法下載,而1個(gè)、3個(gè)、5個(gè)時(shí)沒有問題,具體的解決方法如下,感興趣的朋友可以參考下2013-09-09