22.4 Tomcat与IIS服务器集成
IIS(Internet Information Service)服务器是微软开发的功能强大的Web服务器,IIS为创建和开发电子商务的提供了安全的Web平台。把Tomcat与IIS集成,可以扩展IIS的功能,使它支持Java Web应用。
22.4.1 准备相关文件
在开始本节的操作之前,假定在机器上安装了IIS服务器,应该准备好以下3个文件。
1.JK插件
在本书配套光盘的lib目录下提供了用于IIS的JK插件:isapi_redirect.dll,此外,也可以到以下地址下载最新的JK插件:http://jakarta.apache.org/builds/jakarta-tomcat-connectors/jk,

22.4.4 把JK插件作为筛选器加入到IIS

可以把JK插件isapi_redirect.dll拷贝到/bin目录下。
2.workers.properties文件
在/conf目录下创建如下的workers.properties文件。在本书配套光盘的sourcecode/chapter22/iis目录下也提供了该文件:

workers.tomcat_home=C:\jakarta-tomcat
#让mod_jk模块知道Tomcat
workers.java_home=C:\j2sdk1.4.2
#让mod_jk模块知道j2sdk
ps=\  #指定文件路径分割符
worker.list=worker1
worker.worker1.port=8009
#工作端口,若没占用则不用修改
worker.worker1.host=localhost
#Tomcat服务器的地址
worker.worker1.type=ajp13
#类型
worker.worker1.lbfactor=1
#负载平衡因数

3.uriworkermap.properties文件
在/conf目录下创建如下的uriworkermap.properties文件,它为JK插件指定URL映射。在本书配套光盘的sourcecode/chapter22/iis目录下也提供了该文件:

/*.jsp=worker1
/helloapp/*=worker1

尽管把以上3个文件都放在Tomcat目录下,其实Tomcat服务器并不会访问这些文件。以上给出的是按照惯例的一种配置,事实上,也可以把这些文件放在文件系统的其他地方。
22.4.2 编辑注册表
在配置Apache和Tomcat集成时,JK插件的属性是在Apache的配置文件httpd.conf中设置的。配置IIS和Tomcat集成时,应该在操作系统的注册表中设置JK插件的属性,以下是操作步骤。
(1)在Windows NT/2000中通过regedit命令编辑注册表,创建一个新的键:HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isapi Redirector \1.0,如图22-4所示。

图22-4 在注册表中创建Jakarta Isapi Redirector\1.0键

(2)在Jakarta Isapi Redirector\1.0键下面创建新的字符串,参见表22-5,创建好之后的注册表如图22-5所示。
表22-5 在Jakarta Isapi Redirector\1.0键下面创建的字符串

字 符 串
字 符 串 值
描 述

extension_uri
/jakarta/isapi_redirect.dll
指定访问isapi_redirect.dll文件的uri, 在IIS中将创建名为jakarta的虚拟目录, 在该目录下包含isapi_redirect.dll文件, 参见22.4.3节

log_file
C:\jakarta-tomcat\logs\isapi.log
指定JK插件使用的日志文件, 在实际配置中,可以通过查看这个日志文件, 来跟踪JK插件的运行过程, 这对排错很有用

log_level
debug
指定JK插件的日志级别, 可选值包括debug、info和error等

worker_file
C:\ jakarta-tomcat\conf \workers.properties
指定JK插件的工作文件

worker_mount_file
C:\jakarta-tomcat\conf \uriworkermap.properties
指定JK插件的URL映射文件

图22-5 在Jakarta Isapi Redirector\1.0键下面创建新的字符串

在本书配套光盘的sourcecode/chapter22/iis目录下提供了注册表编辑文件jk.reg,如果不想按照以上方式手工修改注册表,也可以直接运行jk.reg文件(选中这个文件再双击鼠标即可),它会把以上配置内容自动添加到注册表中。jk.reg的内容如下:

Windows Registry Editor Version 5.00   [HKEY_LOCAL_MACHINE\SOFTWARE\
Apache Software Foundation\
Jakarta Isapi Redirector
\1.0]
"extension_uri"="/jakarta/
isapi_redirect.dll"
"log_file"="C:\\jakarta-tomcat
\\logs\\isapi.log"
"log_level"="debug"
"worker_file"="C:\\jakarta-tomcat
\\conf\\workers.properties"
"worker_mount_file"="C:\\jakarta-tomcat
\\conf\\uriworkermap.properties"

在运行jk.reg文件之前,应该把文件中的"C:\\jakarta-tomcat"目录替换为Tomcat安装目录。
22.4.3 在IIS中加入"jakarta"虚拟目录
注册表修改以后,应该在IIS中加入名为"jakarta"的虚拟目录,它是JK插件所在的目录,以下是操作步骤。
(1)选择操作系统的【控制面板】→【管理工具】→【Internet服务管理器】选项,打开Internet信息服务管理器,如图22-6所示。

图22-6 Internet信息服务管理器窗口

(2)选中【默认Web站点】,单击鼠标右键,在下拉菜单中选择【新建】→【虚拟目录】选项,如图22-7所示。创建一个虚拟目录,名为"jakarta",对应的实际文件资源路径应该是isapi_redirect.dll文件所在的目录/bin。

图22-7 创建虚拟目录

(3)修改刚刚创建的jakarta虚拟目录的属性,将其执行许可权限设为"脚本和可执行程序",如图22-8所示。这步操作很重要,它保证在注册表中设置的extension_uri对应的/jakarta/isapi_redirect.dll可以被执行。如果漏掉这步操作,会导致无法访问Tomcat中的Servlet/JSP组件。

图22-8 修改jakarta虚拟目录的执行许可权限

22.4.4 把JK插件作为筛选器加入到IIS
在IIS中加入名为"jakarta"的虚拟目录后,还应该把JK插件作为ISAPI筛选器加入到IIS中,以下是操作步骤。
(1)在Internet信息服务主窗口的目录树中选择IIS主机节点,单击鼠标右键,在下拉菜单中选择【属性】选项,如图22-9所示。在出现的窗口中单击【编辑】按钮,打开IIS主机的属性窗口,如图22-10所示。

图22-9 配置IIS主机的属性

图22-10 IIS主机的属性窗口

(2)在主属性的WWW服务区域单击【编辑】按钮,打开WWW服务主属性窗口,增加新的ISAPI筛选器,筛选器名称为"jakarta",可执行文件为/bin /isapi_redirect.dll,如图22-11所示。

图22-11 增加新的ISAPI筛选器

(3)重新启动IIS服务器,如果配置正常,在WWW服务主属性的ISAPI筛选器子窗口中,新加的jakarta筛选器的状态应该变为绿色向上的箭头,如图22-12所示。

图22-12 jakarta筛选器被装载

22.4.5 测试配置
重启Tomcat服务器和IIS服务器,通过浏览器访问http://localhost/index.jsp。如果出现Tomcat的默认主页,说明配置已经成功。此外,如果在Tomcat服务器上已经发布了helloapp应用,可以访问http://localhost/helloapp/index.htm;如果正常返回helloapp应用的index.htm网页,说明配置已经成功;如果配置有误,可以查看JK插件生成的日志信息,它有助于查找错误原因。在注册表中设定该日志文件的存放位置为/logs/isapi.log。
22.5 小 结
本章介绍了通过JK插件来实现Tomcat与Apache以及IIS服务器集成的步骤。Tomcat提供了专门的JK插件来负责Tomcat和HTTP服务器的通信。JK插件安置在对方HTTP服务器上。当HTTP服务器接收到客户请求时,它会通过JK插件来过滤URL,JK插件根据预先配置好的URL映射信息,来决定是否要把客户请求转发给Tomcat服务器处理。Tomcat与Apache以及IIS服务器集成的异同之处参见表22-6。
表22-6 Tomcat与Apache以及IIS服务器集成的异同之处

Tomcat与Apache集成
Tomcat与IIS集成

JK插件的工作文件
workers.properties文件
workers.properties文件

设置JK插件属性
在Apache的配置文件httpd.conf中设置
在注册表中设置

设置URL映射信息
在Apache的配置文件httpd.conf中设置
在uriworkermap.properties文件中设置

加载JK插件
把JK插件拷贝到/lib目录下, 在Apache的配置文件httpd.conf中设置 LoadModule属性
把JK插件所在的目录作为IIS的虚拟目录, 把JK插件作为ISAPI筛选器加入到IIS中

(T117)
本文节选自由飞思图书授权《Tomcat与Java Web开发技术详解》

http://tech.ccidnet.com/art/1112/20050608/264665_2...

转载于:https://www.cnblogs.com/pony/archive/2007/07/13/817634.html

tomcat与IIS服务器集成相关推荐

  1. 本地tomcat地址_Android服务器——TomCat服务器的搭建

    作为一个开发人员,当然是需要自己调试一些程序的,这个时候本地的服务器就十分方便了,一般都会使用TomCat或者IIS服务器,IIS就比较简单了,其实tomcat也是很简单的,接下来,我们就一起来搭建一 ...

  2. HTTP 错误 403.9 - 禁止访问:连接的用户过多 XP IIS服务器连接数的修改

    计算机教室的机子是XP的,用IIS很不爽,学生机连接到教师机下载资料或上交作业时常常遇到连接的用户过多的错误提示(HTTP 错误 403.9 - 禁止访问:连接的用户过多),这是因为Windows X ...

  3. 使用Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境

    前言 但凡一个略有规模的项目都需要一个持续集成环境的支撑,为什么需要持续集成环境,我们来看一个例子.假如一个项目,由A.B两位程序员来协作开发,A负责前端模块,B负责后端模块,前端依赖后端.A和B都习 ...

  4. 访问windows azure虚拟机iis服务器,如何直接从Java访问Azure/IIS证书?

    thumbprint="ad513653e4560fe4afce5bdac88c744fbcf93525" thumbprintAlgorithm="sha1" ...

  5. 构建高性能.NET应用之配置高可用IIS服务器-第二篇 IIS请求处理模型

    在IIS 中,Http监听者(http.sys)和请求处理者由两个系统服务在控制着.一个是WWW 服务,另外一个就是Windows Process Activation. 对于WWW服务,它主要是监控 ...

  6. Apache、Tomcat、IIS(PHP、JSP、ASP)共存及安装Tomcat

    1. 安装 Tomcat apt-get install tomcat7 apt-get install tomcat7-admin apt-get install tomcat7-docs apt- ...

  7. 在IIS服务器上安装SSL证书

    在IIS服务器上安装SSL证书 本页目录 前提条件 操作步骤 相关文档 阿里云SSL证书服务支持下载SSL证书安装到IIS服务器上,从而使IIS服务器支持HTTPS安全访问.本文介绍了证书安装的具体操 ...

  8. 在vs 2008中使用iis来调试,或者说在iis中集成vs 2008的调试

    在vs 2008中使用iis来调试,或者说在iis中集成vs 2008的调试 在vs 2008中使用iis来调试,在iis中集成vs 2008的调试,可以解决那些要安装在根目录下的项目(转向链接以&q ...

  9. Tomcat在IIS下同端口运行方法(我用的tomcat8.5 iis 10网上各种坑)

    Tomcat在IIS下同端口运行方法(网上其他教程大体上没有毛病,可能我的tomcat iis版本较高,有细节需要注意) 注意: 1.下载isapi_redirect.dll 地址:http://ww ...

最新文章

  1. 奖励名单表格模板_员工出勤工薪记算表(行政人事模板)
  2. 51. Leetcode 106. 从中序与后序遍历序列构造二叉树 (二叉树-二叉树构建)
  3. ajax 最大链接数_leetcode之第三大的数
  4. leetcode 678. Valid Parenthesis String | 678. 有效的括号字符串(带缓存的暴力递归)
  5. php 三个点 三角形面积,知道三角形三个顶点坐标,求面积,我觉得我的没错,但未通过,麻烦大佬帮忙看下...
  6. Python标准库中的random
  7. 全新防火墙6.0 单条PPPOE(ADSL)上网配置
  8. 大龄屌丝自学笔记--Java零基础到菜鸟--006
  9. jupyter 代码到 pycharm 的迁移
  10. python 科研统计_Python科研统计作图Plotnine+Seaborn+matplotlib替代R ggplot2系列!(二)...
  11. Server.MapPath()用法
  12. 2019会考计算机知识点,2019-2020年高中信息技术高一会考总复习理论知识点汇总整理...
  13. Blender程序化地形制作
  14. 浪潮服务器管理口IPMI安装系统(浪潮服务器NF5280m5 配置,raid和系统 安装纪录)
  15. 【1.7k行代码优秀课设】基于stm32f4xx粤嵌GEC-M4的按键密码锁、呼吸灯、蜂鸣器音乐、超声波测距及倒车雷达、温湿度检测、光敏电阻自动灯光调节、USART串口控制系统
  16. CnOpenData·IFR工业机器人数据
  17. python实现shamir秘密共享算法
  18. 机器学习在癌症数据集上的应用实践
  19. rgb三基色与rgba
  20. 2.5Modelsim

热门文章

  1. Windows Server 2016 Technical Preview 5 X64 中文版下载地址
  2. 物联网助推超市转型之具体应用分析
  3. 不懂技术,该如何进行互联网创业?
  4. error C2065: “IDD_DIALOG1”: 未声明的标识符
  5. salt 基本组建之 grains,pillars(整理中)
  6. Java-ORM数据库框架CDM介绍
  7. IB网络用户数量超过私有网络近4倍
  8. 剑指Offer(Java版):数值的整数次方
  9. Sql insert into 后获得自动插入的id
  10. 静态联编与动态联编之virtual的作用