烈火建站学院(LieHuo.Net)虚拟主机 因为这次要求在Windows Server 2003平台上架设JSP虚拟主机运行环境,查看了一下网上所能找到的资料, 基本没有能用的,笔者需要的是能够使IIS同时既支持,ASP又支持,JSP而且又可以做虚拟主机,互相隔离,且运行在80端口。这里就简单谈谈JSP虚拟主机环境在Windows平台上的架设。
安装JSP虚拟主机所需要的软件:
1、操作系统: Window2003中文版
2、Web服务器: IIS6.0
3、JAVA处理平台: JAVA 2 SDK-SE v1.4.2_06
4、jsp/Servlets运行平台: Resin 2.1.16,因为据说Resin比Tomcat运行效率高10倍.
一、安装JAVA 2 SDK
由于这里不做JAVA开发,安装一个标准环境就可以了,可以去java.sun.com上下载好了. 我的安装文件名是:j2sdk-1_4_2_06-windows-i586-p.exe
然后选择安装路径,在这里我是装在C:\jdk目录下设置环境变量,这一步很重要:JAVA_HOME = C:\JDKCLASSPATH=C:\JDK\LIB\tools.jar;C:\JDK\LIB\dt.jar 二、安装jsp/Servlets运行平台,Resin我使用的文件名:resin-2.1.17.zip,解压缩到C:\resin目录 记得立即设置Resin的环境变量,否则最后系统找不到resin在哪里,就做不成功了.RESIN_HOME = C:\resin
#p#副标题#e#
Path 路径里添加 C:\JDK;C:\JDK\bin
接下来运行C:\resin\bin\httpd.exe
点击httpd.exe后等待,然后会出现2个窗口.需要注意的是,启动Resin Web 服务器和关闭服务器, 都要使用小的这个窗口来操作,不要直接把后面的那个大的窗口给关掉哦。
#p#副标题#e#
这时,Resin服务的终端输出上可以看到,http listening to *:8080说明Resin自带的web服务已经运行在本机的8080端口上了利用IE测试一下效果:
到这里,Resin服务器已经架设完毕,如果只自己做测试jsp或者服务器跑这么一个网站的话完全足够用了。三、将Resin挂接进IIS 搭建好IIS6,将Resin挂接进IIS中去进行集中管理在这里我把D:\jsp_site做为jsp网站的主目录然后在目录下创建一个测试用的test.jsp文件输入以下内容:把C:\resin\libexec目录下的isapi_srun.dll 复制到C:\jsp\dllrun目录下至于为什么要把dll复制过去,原因就是jsp的解析是要通过Resin提供的第三方的isapi接口进行的平时客户端提交URL的时候,只要发现是.jsp,IIS将把.jsp丢给iis_srun.dll来执行
接着,在C盘建立C:\jsp\dllrun目录
#p#副标题#e#
继续: 启动IIS6.0,首先在Web服务扩展里面添加允许.jsp后缀的Web服务扩展
这是Windows2003里面IIS6.0增强的安全功能,你可以允许服务器上有哪些服务扩展是允许的,哪些是禁止的,在这里选择允许JSP。接下来打开站点属性,在ISAPI筛选器里面添加新的筛选器,输入jsp, 再输入可执行文件,也就是刚才说的resin挂接IIS用的ISAPI过滤器,输入C:\jsp\dllrun\isapi_srun.dll
确认后,要注意一点,就是刚刚挂接进去的dll不会立即生效,优先级也显示*未知*继续往下走接下来就是修改Resin的配置文件建议大家仔细研究C:\resin\conf\samples下的配置文件的参考,尤其是要研究iis.conf 和 virtual_host.conf接下来建立一个带主机名的网站,以实现JSP虚拟主机的功能在DNS域名控制面板中将www.jsp.com指向本服务器的IP地址,用来访问本机的jsp站点。将www.asp.com指向本服务器的IP地址, 以访问本机的asp站点。如果这两个都能访问,那么表明,我们的目的已经达到了 接下来修改c:\resin\conf目录下的配置文件resin.conf这里非常关键,但其实最重要的就两个地方。将
这个不要紧的,
仔细看
配置文件基本配好了。下面添加一个resin.ini文件到先前建立的dllrun目录 添加内容ResinConfigServer localhost 6802CauchoStatus yes意思就是当调用isapi_srun.dll的时候读取相关配置 。。。。。把JSP的网站加入到这个池中方便集中管理。
回到IIS里面,将主机头名添加进去
给虚拟主机用户添加账号
并将这个用户加入Guests组 然后给对应的目录设定权限: 给D:\jsp_site目录添加刚才用户的权限,注意需要给读写都给
给C:\jsp\dllrun目录刚才那个用户的读权限:
#p#副标题#e#
在IIS6.0里面的应用程序池中间添加一个新的池 名字叫jsp,然后给这个池 应用程序池标识给予SYSTEM权限
其实这里可以给更低一点的权限的,有心的朋友可以自己研究一下
#p#副标题#e#
检查Resin有没有挂接进IIS的办法就是看ISAPI筛选器。然后浏览www.asp.com访问test.asp文件(asp网站可以正常运行)
在jsp的网站上添加一个虚拟目录,目录名为scripts,并且给予可执行的权限
最后别忘了给这个网站的运行权限设定为刚才的jsp用户
重启Resin,重启IIS
如果状态是绿色箭头,表示已经被系统挂接成功。#p#副标题#e#
浏览www.jsp.com(jsp网站也同时可以运行)
OK, JSP虚拟主机就完成啦...