安装。
2、安装php、mysql及mssql。网上很多正确介绍。这里就不讲了。重点讲jsp的环境搭配。
3.1、安装JAVA 2 SDK
我装在D:\JDK目录下。
接下来设置环境变量,这一步很重要,别忘了:
JAVA_HOME = D:\JDK
CLASSPATH = D:\JDK\LIB\tools.jar;D:\JDK\LIB\dt.jar
Path 追加D:\JDK;D:\JDK\bin
3.2、安装jsp/Servlets运行平台[我装的是RESIN2.0.1]
解压缩到D:\resin目录
设置Resin的环境变量。
RESIN_HOME = D:\resin
运行D:\resin\bin\httpd.exe -install 将resin安装到系统服务中。
复制我精简过的resin.conf内容到D:\resin\conf\resin.conf里
<caucho.com>
<log id=’/log’ href=’stderr:’ timestamp='[%Y-%m-%d %H:%M:%S.%s]’/>
<java compiler="internal" compiler-args=""/>
<resource-ref>
<res-ref-name>jdbc/test</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<init-param driver-name="com.caucho.jdbc.mysql.Driver"/>
<init-param url="jdbc:mysql_caucho://localhost:3306/test"/>
<init-param user=""/>
<init-param password=""/>
<init-param max-c/>
<init-param max-idle-time="30"/>
</resource-ref>
<jsp precompile=’true’ static-encoding=’true’ recompile-on-error=’true’/>
<http-server>
<doc-dir>.</doc-dir>
<http port=’82’/>
<srun host=’127.0.0.1′ port=’6802’/>
<class-update-interval>2s</class-update-interval>
<servlet-classloader-hack>false</servlet-classloader-hack>
<caucho-status>true</caucho-status>
<thread-max>150</thread-max>
<thread-keepalive id=’100’/>
<request-timeout id=’65s’/>
<accept-buffer-size id=’256’/>
<thread-min id=’5’/>
<ignore-client-disconnect>true</ignore-client-disconnect>
<cache dir=’cache’ size=’1024′ entries=’8192’/>
<cache-mapping url-pattern=’/’ expires=’2s’/>
<servlet-mapping url-pattern=’*.xtp’ servlet-name=’xtp’/>
<servlet-mapping url-pattern=’*.jsp’ servlet-name=’jsp’/>
<servlet-mapping url-pattern=’/struts/*’ servlet-name=’plugin_match’/>
<servlet-mapping url-pattern=’/other/*’ servlet-name=’plugin_match’/>
<servlet-mapping url-pattern=’*.action’ servlet-name=’plugin_match’/>
<servlet-mapping url-pattern=’*.html’ servlet-name=’plugin_match’/>
<servlet-mapping url-pattern=’*.do’ servlet-name=’plugin_match’/>
<servlet-mapping url-pattern=’/dwr/*’ servlet-name=’plugin_match’/>
<servlet-mapping url-pattern=’/servlet/*’ servlet-name=’invoker’/>
<welcome-file-list>index.xtp, index.jsp, index.html</welcome-file-list>
<host id=’t.servsd.cn’ app-dir=’D:wwwroottest’ class-update-interval=’2′>
<error-log id=’D:wwwroottestlogvhost1-error.log’/>
<servlet-mapping url-pattern=’/hello’ servlet-name=’test.HelloWorld’/>
</host>
</http-server>
</caucho.com>
三、将Resin挂接进IIS
按步骤进行:
在D盘建立D:\wwwroot\jspsite目录。这个就是jsp网站的主目录。
然后在目录下创建一个测试用的test.jsp文件。
输入以下内容:
<HTML>
<HEAD>
<TITLE>Jsp Simple Example</TITLE>
</HEAD>
<BODY>
<% out.println("Hello, world!"); %>
</BODY>
</HTML>
接着,在D盘建立D:\wwwroot\scripts目录。
把D:\resin\libexec目录下的isapi_srun.dll复制到D:\wwwroot\scripts目录下。
并将目录权限设置成everyone的读取和运行,类似php的目录设置哈.你可以把他当成一回事儿去看.
启动IIS6.0,首先在Web服务扩展里面添加允许.jsp后缀的Web服务扩展。
扩展名什么都随意填写,文件选择D:\wwwroot\scripts\isapi_srun.dll
这是Windows2003里面IIS6.0增强的安全功能,你可以允许服务器上有哪些服务扩展是允许的,哪些是禁止的。设置为允许。
打开网站文件夹属性,不是站点的属性哦.看清楚,在ISAPI筛选器里面添加新的筛选器,名称随意,这里输入jsp,
再输入可执行文件,D:\wwwroot\scripts\isapi_srun.dll
确认后,要注意一点,就是刚刚挂接进去的dll不会立即生效,优先级也显示*未知*
没有关系,不用理会。继续往下走。
在[主目录]-[配置]-[缓存ISAPI扩展]中添加.jsp的扩展.文件选择D:\wwwroot\scripts\isapi_srun.dll。
如果你不希望所有站点都支持jsp。这一步可以省去。以后在要支持jsp的站点属性中填加就可以了。
下面我们需要做的就是比较重要也很复杂的事情了,也就是修改Resin的配置文件。
让IIS+resin可以支持虚拟主机.(好多人要认真看啦~~我在网上找到教程贴里很少有介绍虚拟主机这部分的.只是介绍单站的.)
建立一个jsp网站,www.servsd.cn 指向我的IP 219.146.55.180
建立一个jsp网站,t.servsd.cn 指向我的IP 219.146.55.180
接下来,我修改c:\resin\conf目录下的配置文件resin.conf
这里非常关键,但其实最重要的就一个地方。
修改这里的参数。需要增加虚拟主机就复制一下另加一段代码就可以了。
<host id=’t.servsd.cn’ app-dir=’D:wwwroottest’ class-update-interval=’2′> [域名与对应目录]
<error-log id=’D:wwwroottestlogvhost1-error.log’/>[错误日志的存放位置]
<servlet-mapping url-pattern=’/hello’ servlet-name=’test.HelloWorld’/>
</host>
在每个jsp的网站上添加一个虚拟目录,目录名为scripts,并且去掉所有权限,只保留可执行。
重启Resin,重启IIS。
检查Resin有没有挂接进IIS的办法就是看ISAPI筛选器
如果状态是绿色箭头,表示已经被系统挂接成功。
然后浏览www.servsd.cn和t.servsd.cn访问test.jsp文件。
其实你也可以下个探针。探针里会显示当前目录。两个站的目录不同的话虚拟主机就是配置成功了。
而asp网站也同时可以运行,php却不可以了?想知道为什么吗?
resin.conf中的 <resin:import path="${resin.home}/conf/app-default.xml"/>
这里调用了app-default.xml来确认文件类型。把这里和php相关的全
删掉就可以了。
如果还不行。就把c
onf目录中所有文件里和php相关的删掉。重启IIS和Resin。OK!
搞定收工。