让IIS 6 支持 JSP (IIS整合Tomcat)

大家都了解在MS家族中iis作为internet服务器可谓是赫赫有名,简单,方便。
而且相关的web程序(asp,asp.net)也是比比皆是。
我们希望java开发的web程序可以和iis共存(共同使用80端口发布)。
这方面的教程网上很多,多数是copy之后又copy,以至于有些细节一直含糊不清,也导致我走了许多弯路。在此留个脚印防止日后的错误。
软件及环境
windows server 2003
IIS 6.0
Tomcat 6.0.20
JDK 6.0
JK isapi_redirect-1.2.14 (很多情况下是由于isapi_redirect 的版本不符,我之前用过最新的1.2.28但是没有整合成功 大家可以尝试一下,这个软件好像不太好找,我在附件中将会给出)
1.安装IIS
控制面板--> 添加删除程序 --> 添加删除windows组件

[img]http://dl.iteye.com/upload/attachment/158820/a44f7e07-13b1-31b9-81a9-db62fc1033b5.jpg[/img]

测试

[img]http://dl.iteye.com/upload/attachment/158822/1d2d4ad2-1f31-37c1-8238-85b8755ce9a5.jpg[/img]

2.安装java环境,这里要用jdk而不是jre
我安装到

c:\java\jdk1.6

不要忘记配置环境变量
3.安装tomcat
我的安装目录是

C:\tomcat6

启动tomcat
测试8080端口

[img]http://dl.iteye.com/upload/attachment/158824/308a4369-9992-3873-8d6c-6a9bd5702921.jpg[/img]

4.基本工作完成 下面我们进行整合
安装isapi_redirect-1.2.14 当然也可以直接使用isapi_redirect-1.2.14.dll + 配置文件手动编写,不过对于首次安装还是建议使用安装文件,防止配置文件书写产生误差导致整合不成功。

[img]http://dl.iteye.com/upload/attachment/158826/76ddd6d5-818f-359c-89fb-d7e1de8ae9df.jpg[/img]

一路next
安装目录是

C:\Program Files\Apache Software Foundation\Jakarta Isapi Redirector

5.打开iis的管理界面
查看默认站点是否存在

[img]http://dl.iteye.com/upload/attachment/158828/fa8dfc13-6f3d-3bf9-8863-224bd8dcdc57.jpg[/img]

中的jakarta的虚拟目录
并查看属性中

[img]http://dl.iteye.com/upload/attachment/158830/890f981c-5836-3bfd-ad30-20a122dda3c9.jpg[/img]

是否存在jakarta的筛选器。至于向上的绿色箭头可能没有(网上很多都指出要求由此,实际上只有配置之后首次访问的时候,才进行加载)只要不是红色就可以。
如果没有则创建,
添加筛选器 名称jakarta 文件地址 C:\Program Files\Apache Software Foundation\Jakarta Isapi Redirector\bin\isapi_redirect.dll
创建虚拟目录

[img]http://dl.iteye.com/upload/attachment/158832/fe9a53f1-1655-3042-ad50-580c0f7a358d.jpg[/img]

别名 jakarta (必须) 路径 C:\Program Files\Apache Software Foundation\Jakarta Isapi Redirector\bin\
访问权限

[img]http://dl.iteye.com/upload/attachment/158833/2eccb2ae-8649-3720-a71f-8f5e87484205.jpg[/img]
不要忘记 运行脚本 执行 勾选
ok
8.我们在tomcat app下面随便建立个工程 我这里是目录名0431la
修改配置文件
C:\Program Files\Apache Software Foundation\Jakarta Isapi Redirector\conf\uriworkermap.properties

# uriworkermap.properties - IIS
#
# This file provides sample mappings for example wlb
# worker defined in workermap.properties.minimal
# The general syntax for this file is:
# [URL]=[Worker name]

/admin/*=wlb
/manager/*=wlb
/jsp-examples/*=wlb
/servlets-examples/*=wlb

# Optionally filter out all .jpeg files inside that context
# For no mapping the url has to start with exclamation (!)

!/servlets-examples/*.jpeg=wlb

#
# Mount jkstatus to /jkmanager
# For production servers you will need to
# secure the access to the /jkmanager url
#
/jkmanager=jkstatus
/0431la/*=wlb

我们重启tomcat 和 iis 并访问测试
iis的重启可以通过鼠标右键我的电脑 --> 管理 进行重启

[img]http://dl.iteye.com/upload/attachment/158836/f1d32c2d-2374-3e76-abe4-61bd4cd64b64.jpg[/img]


接下来我们可以进行测试

[img]http://dl.iteye.com/upload/attachment/158838/82d42105-666c-39fd-96bd-740fe9540c22.jpg[/img]

[img]http://dl.iteye.com/upload/attachment/158840/4a7dc675-b0ce-3804-bd63-e96fba6bbe54.jpg[/img]

ok了 虽然这不是我们的最终结果 但是至少我们之前配置的没有问题了

下面我们进行虚拟主机的配置
9.我们把0431la目录放到c盘根目录并配置tomcat的虚拟主机

<Host name="www.0431.la" debug="0" appBase="c:\0431la" unpackWARs="true" autoDeploy="true">
<Context path="" docBase="c:\0431la" debug="0" reloadable="true"/>
</Host>

10.在iis下面配置虚拟主机的映射目录
并添加jakarta虚拟目录 和 isapi筛选 配置过程可参考第五步

11.修改配置文件
C:\Program Files\Apache Software Foundation\Jakarta Isapi Redirector\conf\uriworkermap.properties

# uriworkermap.properties - IIS
#
# This file provides sample mappings for example wlb
# worker defined in workermap.properties.minimal
# The general syntax for this file is:
# [URL]=[Worker name]

/admin/*=wlb
/manager/*=wlb
/jsp-examples/*=wlb
/servlets-examples/*=wlb

# Optionally filter out all .jpeg files inside that context
# For no mapping the url has to start with exclamation (!)

!/servlets-examples/*.jpeg=wlb

#
# Mount jkstatus to /jkmanager
# For production servers you will need to
# secure the access to the /jkmanager url
#
/jkmanager=jkstatus
/0431la/*=wlb
/*.jsp=wlb

让jsp请求交由tomcat处理
呵呵
重启iis 和 tomcat 看看我们的成果

[img]http://dl.iteye.com/upload/attachment/158842/58028490-7bb3-3157-95f9-f6f7baefcad4.jpg[/img]

我们可以考但jsp请求完全正常解析了。

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>

<body>
This is my JSP page. <br>
</body>
</html>

该jsp是myeclipse工程自动生成的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值