欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

win2000/2003下整合IIS+Tomcat5支持jsp

程序员文章站 2022-06-27 21:20:29
windows2003 + iis6 + tomcat5.配置2000和2003下整合iis+tomcat详细的配置如下:1、安装jdk,(我安装在 d:\java)设置环...
windows2003 + iis6 + tomcat5.配置
2000和2003下整合iis+tomcat详细的配置如下:
1、安装jdk,(我安装在 d:\java)设置环境变量[classpath、java_home、path](根据自己的jdk安装路径设置)
“我的电脑”->点右键->“属性”->“高级”->“环境变量”->“系统变量”->新建->变量名:
classpath=.;d:\java\jdk\lib\tools.jar;d:\java\jdk\lib\dt.jar
java_home=d:\java\jdk
path=.;d:\java\jdk\bin;
测试:在dos下输入javac回车,出现javavc的使用说明表示你的jdk安装成功
在dos下输入java回车,出现java的使用说明表示你的环境变量设置成功
2、安装tomcat,(我安装在 d:\tomct5,安装的http端口是8080,http端口安装完成后可以在server.xml中修改)设置环境变量tomcat_home(根据自己的tomcat安装路径设置)
tomcat_home=d:\tomct5
测试:启动tomcat,在ie中输入出现tomcat的欢迎界面,安装成功!
3、在iis中把jsp相关的请求发送到tomcat需要tomcat connector的支持,去apache网站下载jk2,jk2负责iis和tomcat的通讯,下载地址:

下载:jakarta-tomcat-connectors-jk2.0.4-win32-iis.zip
解压后找到bin目录中的isapi_redirector2.dll文件,我把它放在了d:\tomcat5\iis下(目录随便)。
4、创建workers2.properties文件
在tomcat安装目录下的conf目录下建一个workers2.properties文件,把下面这段内容拷进去保存,
实际运用时把所有的localhost和8009换成你自己的ip和端口:
[shm]
file=d:/tomcat5/logs/jk2.log
size=1048576
# example socket channel, override port and host.
[channel.socket:localhost:8009]
port=8009
host=127.0.0.1
# define the worker
[ajp13:localhost:8009]
channel=channel.socket:localhost:8009
# uri mapping
[uri:/*.jsp]
[uri:/*.do]
worker=ajp13:localhost:8009
# define the worker
[status:status]
# uri mapping
[uri:/jkstatus/*]
worker=status:status
使用前请先修改文件的file=d:/tomcat5/logs/jk2.log这一行,改成你需要的路径,copy地址栏的路径时请注意,是"/"而不是“\”,跟windows表示的路径不一样。在 # uri mapping 处设置你需要tomcat操作的内容。
5、编辑tomcat安装目录下的conf目录中的jk2.properties文件(如果没有新建一个)
添加如下内容:
request.tomcatauthentication=false
6、编辑注册表
新建一个iis.reg文件,把下面这段内容拷进去保存然后双击iis.reg把信息导入注册表。
(注意,把涉及的tomcat路径改成你的tomcat的路径)
iis.reg文件内容如下:
windows registry editor version 5.00
[hkey_local_machine\software\apache software foundation\jakarta isapi redirector]
[hkey_local_machine\software\apache software foundation\jakarta isapi redirector\2.0]
"serverroot"="d:\\tomcat5"
"extensionuri"="/jakarta/isapi_redirector2.dll"
"workersfile"="d:\\tomcat5\\conf\\workers2.properties"
"loglevel"="debug"
7、添加“isapi筛选器(以便connector能截取到url请求)
打开“开始菜单->设置->控制面板->管理工具->internet 服务管理器"在里面选择“网站”中的默认网站(默认网站我的指向d:\tomcat5\webapps) (注:2000系统为 “开始菜单->设置->控制面板->管理工具->internet 服务管理器在里面选择默认web站点"),在其上点右键选“属性”,在弹出的页框里选择“isapi筛选器”,点“添加”,筛选器名称填jakarta,可执行文件中填入你的isapi_redirector2.dll的绝对路径(就是第3部中isapi_redirector2.dll文件存放的位置,我的是d:\tomcat5\iis\isapi_redirector2.dll)。“确定”后点“确定”关闭属性页。
8、新建虚拟目录
在internet信息服务管理器中,在里面选择“网站”中的默认网站,点右键,选择“新建”->“虚拟目录”,别名填jakarta,下一步,路径选为你的isapi_redirector2.dll存放的目录,我的是d:\tomcat5\iis,下一步,权限中记得把 "执行(例如isapi应用程序或cgi)"一项打上勾,再点下一步,再点“完成”。
如果你用的是iis5的话,到这里就可以结束了,但iis6还没完(稍候介绍)。
9、重新启动“默认 web 站点”。然后在“默认 web 站点”点右键->“属性”->“isapi筛选器”,如果"jakarta"前面的箭头是绿色的,那么表明配置已经成功了。如果箭头是红色,那么请你检查整个配置过程,看看有没有弄错的地方。
10、iis6需添加此步骤,(如果是iis5跳过) 在“internet信息服务管理器”的“网站”中的“web服务扩展”上点右键选择“添加一个新的web服务扩展”,弹出的框中扩展名填jsp(这里的名称无所谓,随便取一个),“要求的文件”选“添加”然后找到你的isapi_redirector2.dll后“确定”。“设置扩展状态为允许”也打上勾,确定。
至此,connector就可以对请求进行过滤,把符合配置文件中的请求重写到extension_uri指定的uri进行处理,这里为/jakarta/isapi_redirect2.dll,然后isapi_redirect2.dll再转发到tomcat的8009由tomcat处理完成后再循原路发回去.
11、新建测试文件 在tomcat安装目录中的weapps中新建一个test目录,里面新建一个test.jsp文件和相应的web-inf目录和web.xml文件。
12、重启电脑
13、启动tomcat,再启动iis 打开ie,输入
然后再看看,如果两者执行结果一样,恭喜你,整合成功了!
注:
1.如果在输入显示tomcat的错误信息,看一下你的tomcat安装目录中的common\lib目录下有没有tools.jar文件,如果没有就去把jdk安装目录中的lib目录下的tools.jar拷贝进来。
2. iis指向的目录最好和tomcat指向的目录一致,不然会发生找不到图像和其他资源文件的问题。
3.你需要tomcat处理的文件和目录可以在workers2.properties(见第4步)中的# uri mapping与worker=ajp13:localhost:8009之间设置,如:[uri:/*.jsp],[uri:/*.do],每次修改workers2.properties后需要重启iis才能生效。
4.英文文档中还提到应该把iis6设置为iis5隔离模式,“internet信息服务管理器”->“网站”->“属性”->“服务”,把“以iis5.0隔离模式运行www服务”打上勾。这个也可以不选择,如果你配置不成功就把这个勾上。
5.如果上述方法都试过了还无法成功整合的话,可以尝试如下操作:虚拟目录-à属性à虚拟目录选项à配置       添加一个应用程序扩展,扩展名为 .jsp 可执行文件为isapi_redirector2.dll 的绝对路径,同样添加 .do 对应isapi_redirector2.dll 的应用程序扩展。
6. tomcat 默认端口是8080,从步骤4可以知道,jk2使iis能够把所有的jsp 请求发送到tomcat ,让tomcat 的8009端口来处理请求,所以不用把tomcat 的默认端口改成8009,这样的话会存在冲突,导致整合无法成功。

然后再看看,如果两者执行结果一样,恭喜你,整合成功了!