Windows平台上架设jsp虚拟主机

我通常在Windows上,这次要架设jsp虚拟主机运行环境,查看了一下网上
所能找到的资料,基本能用的,我的是能够使IIS既.asp又.jsp而且又做虚拟主机。
互相隔离,且运行在80端口。反正搜索出一堆,参考一下,搞吧。
找,这里面良多东西,不要怕麻烦,先准备好:
1、操作,我的环境是Window2003中文版。
2、Web器,我的是自带的IIS6。
3、JAVA处理平台,这里用的是JAVA 2 SDK,SE v1.4.2_06版。
4、jsp/Servlets运行平台,我选择的是Resin 2.1.16版,据说Resin比Tomcat运行效率高10倍以上,而关于
Resin的版本注意的是,我听说Resin 2.x属于版本,而3.x则是收费版本,选择Resin 2.1.16版。呵呵。
没东西了,。

一、安装JAVA 2 SDK
不做JAVA开发,安装尺度环境就了,去java.sun.com,网页右边有快速导航,直接去好了,有中文版的。
安装名是:j2sdk-1_4_2_06-windows-i586-p.exe ,不URL了,找去。
运行安装,泛起界面:

然后选择安装路径,全部安装好,操作,很简朴的。
我装在C:JDK目录下。
接下来设置环境变量,这一步很重要,别忘了:

JAVA_HOME = C:\JDK
CLASSPATH = C:\JDKLIB\ools.jar;C:\JDKLIBdt.jar

Path 路径里添加 C:JDK;C:JDK\bin

二、安装jsp/Servlets运行平台,Resin
哪里找?嘛,去www.caucho.com,上去就找Download,最新版本就好了。
我用的名:resin-2.1.16.zip,解压缩到C:esin目录
记得立刻做好下面这一步,设置Resin的环境变量,我老是在这里忘了,找不到resin在哪里,当然不成功了。
RESIN_HOME = C:\esin

接下来继承,运行C:esin\bin\httpd.exe

这等待,然后出来了2个窗口,仔细看清晰。注意的是,启动Resin Web 器和关闭器
都要小的窗口来操作,不要直接把后面的那个大的窗口给咔嚓掉哦。

这,Resin的终端输出上看到,http listening to *:8080
这表明Resin自带的web运行在本机的8080端口上了。
验证一下:

到这里,Resin器架设完毕,只做测试jsp或者器跑这么的话
完全足够用了。当然,老是访问8080端口也很利便,手工修改一下。
打开C:\esinconfesin.conf:
查找,是修改端口的
修改站点默认目录也有2种改法,用的是C:\esindoc下的
在配置里面只要写相对路径doc就了。
doc中间的doc地方。

看见?
是的,另外这里修改端口就了。
、、、 呵呵,谁让我还不知足呢。
 
三、将Resin挂接进IIS
我先把IIS6装起来,Win2003的好处不用的东西平时全都不开,呵呵,真不错。
按步骤:
在C盘建立C:\webjspsite目录。jsp的主目录。
然后在目录下创建测试用的test.jsp。

接着,在C盘建立C:\web\dllrun目录。
把C:\esinlibexec目录下的isapi_srun.dll 复制到C:\web\dllrun目录下。
至于为要把dll复制过去,原因jsp的解析是要Resin的第三方的isapi接口的。
平时客户端提交URL的,只要是.jsp,IIS将把.jsp丢给iis_srun.dll来执行。

后面目录还要再用,继承往下走:
启动IIS6.0,首先在Web扩展里面添加允许.jsp后缀的Web扩展。
扩展名都随意填写,我这里输入jsp。

这是Windows2003里面IIS6.0增强的安全,你允许器上有哪些扩展是允许的,哪些是禁止的。
允许JSP。
为了看得更清晰,建立新的站点。

打开站点属性,在ISAPI筛选器里面添加新的筛选器,名称随意,这里输入jsp,
再输入可执行,也刚才说的resin挂接IIS用的ISAPI过滤器,输入
C:web\dllrun\isapi_srun.dll

确认后,要注意一点,刚刚挂接进去的dll不会立刻生效,优先级也显示*未知*

关系,不用理会。继承往下走。
下面做的比较重要也很复杂的事情了,也修改Resin的配置。
仔细研究C:\esinconfsamples下的配置的参考,
尤其是要研究iis.conf 和 virtual_host.conf
 
下面说一下计划,我计划是这样,建立带主机名的,这样来模拟真实器
环境中,虚拟主机的。
那么我计划建立jsp,abu.com 指向IP 127.0.0.1
而127.0.0.1直接访问,是IIS默认的asp。
这两个都能访问,那么表明,的目的达到了

为了能够在本地实现访问abu.com的能够解析到127.0.0.1 我修改本机的hosts

接下来,我修改c:\esinconf目录下的配置resin.conf
这里非常枢纽,但其实最重要的就两个地方。
注释掉,将Resin自带的8080端口运行的注释掉加入 这里的app-dir是缺省路径,Resin自带的web
运行的话,缺省目录。

和下面这里:
仔细看中间的这部门,这是建立虚拟主机的枢纽,每次增加虚拟主机就修改部门,
每个站点用<>括起来

配置基本配好了。
下面添加resin.ini到先前建立的dllrun目录
添加
ResinConfigServer localhost 6802
CauchoStatus yes
意思当调用isapi_srun.dll的读取配置

回到IIS里面,将主机头名添加进去。

给虚拟主机添加账号。

加入Guests组

然后给对应的目录设定权限:
给C:\webjspsite目录添加刚才的权限,注意给读写都给。

给c:\webdllrun目录刚才那个的读权限:

在IIS6.0里面的应用程序池中间添加新的池
名字叫jspAppPool,然后给池 应用程序池标识给予SYSTEM权限。

其实这里给更低一点的权限的,有心的朋友研究一下。
把JSP的加入到池中利便集中

在jsp的上添加虚拟目录,目录名为scripts,并且给予可执行的权限。

别忘了给的运行权限设定为刚才的jsp_user

重启Resin,重启IIS。
检查Resin有挂接进IIS的办法看ISAPI筛选器

如果状态是绿色箭头,表示已经被系统挂接成功!
然后浏览abu.com访问test.jsp

而asp也运行

搞定收工

点赞