• 【转载】Windows平台上jsp虚拟主机环境的架设——Windows2003+IIS6+J2SDK1.4.2+Resin2.1.16


    通常在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:\JDK\LIB\tools.jar;C:\JDK\LIB\dt.jar

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

     

    二、安装jsp/Servlets运行平台,Resin

    哪里找?下载嘛,去www.caucho.com,上去就找Download,下载最新版本就好了。

    我用的文件名:resin-2.1.16.zip,解压缩到C:\resin目录

    记得立即做好下面这一步,设置Resin的环境变量,我总是在这里忘了,最后系统找不到resin在哪里,当然不成功了。

    RESIN_HOME = C:\resin

    接下来我们继续,运行C:\resin\bin\httpd.exe

    这时候等待,然后出来了2个窗口,仔细看清楚。需要注意的是,启动Resin Web 服务器和关闭服务器

    都要使用小的这个窗口来操作,不要直接把后面的那个大的窗口给咔嚓掉哦。

     

    这时候,Resin服务的终端输出上可以看到,http listening to *:8080

    这表明Resin自带的web服务已经运行在本机的8080端口上了。

    验证一下:

    到这里,Resin服务器已经架设完毕,如果只自己做测试jsp或者服务器跑这么一个网站的话

    完全足够用了。当然,总是访问8080端口也不是很方便,自己可以手工修改一下。

    打开C:\resin\conf\resin.ini文件:

    查找<http port='8080'/>,这个是修改端口的

    修改站点默认目录也有2种改法,现在系统用的是C:\resin\doc下的内容

    在配置文件里面只要写相对路径doc就可以了。

    也就是<doc-dir>doc</doc-dir>中间的doc这个地方。

    看见没有?

    是的,另外<http port='8080'/>这里修改端口就可以了。

    但是、、、 呵呵,谁让我还不满足呢。

     

    三、将Resin挂接进IIS

    我先把IIS6装起来,Win2003的好处就是不用的东西平时全都不开,呵呵,真不错。

    按步骤进行:

    在C盘建立C:\web\jspsite目录。这个就是jsp网站的主目录。

    然后在目录下创建一个测试用的test.jsp文件。

    输入以下内容:

    <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 复制到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:\resin\conf\samples下的配置文件的参考,

    尤其是要研究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:\resin\conf目录下的配置文件resin.conf

    这里非常关键,但其实最重要的就两个地方。

    将<doc-dir>注释掉,将Resin自带的8080端口运行的服务注释掉<http port='8080'/>

    加入<http-server app-dir='C:\resin\doc'> 这里的app-dir是缺省路径,假如Resin自带的web

    运行的话,缺省就是这个目录。

    和下面这里:

    仔细看<host>中间的这部分,这是建立虚拟主机的关键,每次增加虚拟主机就需要修改这个部分,

    每个站点用<>括起来。

    配置文件基本配好了。

    下面添加一个resin.ini文件到先前建立的dllrun目录

    添加内容

    ResinConfigServer localhost 6802
    CauchoStatus yes

    意思就是当调用isapi_srun.dll的时候读取相关配置

     

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

    给虚拟主机用户添加账号。

    加入Guests组 

    然后给对应的目录设定权限:

    给C:\web\jspsite目录添加刚才用户的权限,注意需要给读写都给。

    给c:\web\dllrun目录刚才那个用户的读权限:

    在IIS6.0里面的应用程序池中间添加一个新的池

    名字叫jspAppPool,然后给这个池 应用程序池标识给予SYSTEM权限。

    其实这里可以给更低一点的权限的,有心的朋友可以自己研究一下。

    把JSP的网站加入到这个池中方便集中管理。

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

    最后别忘了给这个网站的运行权限设定为刚才的jsp_user用户。

     

    重启Resin,重启IIS。

    检查Resin有没有挂接进IIS的办法就是看ISAPI筛选器

    如果状态是绿色箭头,表示已经被系统挂接成功。

    然后浏览abu.com访问test.jsp文件

    而asp网站也同时可以运行



    转自:http://www.patching.net/2005-11-3/news2005113203608.htm

  • 相关阅读:
    使用注解方式定义和配置aop
    javascript 相关小的知识点集合
    javascript ES3小测试
    js事件相关面试题
    前端工程师在面试过程中常遇到的知识点
    跨浏览器事件对象封装
    webstorm我用到的快捷键【不断更新】
    切图技巧分享—圆角背景色
    深入理解css中vertical-align属性
    photoshop CC智能切图
  • 原文地址:https://www.cnblogs.com/bgming/p/287882.html
Copyright © 2020-2023  润新知