设为首页 收藏本站
查看: 993|回复: 0

[经验分享] 整合Vista IIS7 与 Tomcat 5.5的配置方法

[复制链接]

尚未签到

发表于 2015-8-7 08:27:55 | 显示全部楼层 |阅读模式
  IIS整合Tomcat的目的,就是要在IIS上把所有关于JSP的请求转发到Tomcat上处理,再把结果发送给客户端,从外部看来,就好像是 IIS支持JSP一样.而配置的方法,网上虽然能找到很多,但是由于IIS7相对于以往改变较大,所以配置过程还是遇到了不少麻烦.

    1.安装JDK 1.5与Tomcat 5.5,生产环境建议安装exe版本以服务的方式运行,JDK和exe版的Tomcat基本不需要配置.而我这边主要是用以调试,所以是下载zip文件形式的Tomcat.相关的配置方法,可以参考这篇文章,注意IIS和Tomcat都使用各自默认的端口80和8080.

    2.在IIS中把JSP相关的请求发送到Tomcat需要Tomcat Connector的支持.事实上,Tomcat为主流的 Web Server 和 OS 都提供了支持.这应该是由于Tomcat将自己定位为JSP容器,而非 Web Server,即使它也可以作为 Web Server 使用.在上面的链接中下载 isapi_redirect.dll ,我把它放到了 Tomcat 目录里面的 bin\win32\i386 里面.然后参考这里对 Connector 进行配置,我这里使用了注册表的方式,上面还有另一种通过properties文件进行配置的方法.这里要注意的是,虽然上面说在 Tomcat 的 conf 目录里能找到示例的配置文件,但我在tomcat里面却没有发现相关的文件.这里给出 workers.properties 和uriworkermap.properties 简单示例

     workers.properties


# workers.properties.minimal -
#
# This file provides minimal jk configuration properties needed to
# connect to Tomcat.
#
# The workers that jk should create and work with
#
worker.list=ajp13w


#
# Defining a worker named ajp13w and of type ajp13
# Note that the name and the type do not have to match.
#
worker.ajp13w.type=ajp13
worker.ajp13w.host=localhost
worker.ajp13w.port=8009

   
uriworkermap.properties


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

/servlets-examples/*=ajp13w

# Optionally filter out all .jpeg files inside that context
# For no mapping the url has to start with exclamation (!)
    workders.properties中可以定义多个worker,若要添加worker,首先要修改worker.list项,多个worker使用,号分隔,然后再通过 worker..的形式定义workder的属性.如上例中的 ajp13w,其中type表示Tomcat端使用的协议,除了ajp13外,常见的还有旧版的ajp12协议,host自然就是指tomcat所在的主机,我的理解是应该可以把它指到其他的主机上面,实现负载均衡等高级应用.port一般不需要更改,要注意这个port是提供ajp13服务的,与 8080的http是两回事.我在配置的时候就发生ajp13服务没有正常启动,重启了服务器之后才解决,要确认该服务器有无启动,可以查看logs下面的stdout开头的日志文件,基有发现"INFO: JK2: ajp13 listening on /0.0.0.0:8009" 字样的行,说明Tomcat的 ajp13已经正常运行.
    uriworkermap.properties的配置方法也很简单,等号的左边是url的样式,右手边就是worker的名称.Connector会把匹配该样式的请求转发到指定的worker去进行处理.这里相当于在IIS把/servlets-examples/映射到Tomcat的/servlets-examples/应用程序.你也可以把IIS里面的站点根目录和Tomcat里面的站点根目录指到同一个目录,然后再把*.jsp和*.do映射到Tomcat去处理,这种方法应该比较适合生产环境,因为据说tomcat对静态文件的处理能力较差.


    3.现在开始对IIS进行配置,首先打开 IIS管理器 ,ISAPI和CGI限制 里面把isapi_redirect.dll添加进去,并设为允许,如果果你找不到这一项,请点击右边树形菜单的根选项,即是以计算机名称开头的项.只有在这里才能找到.这个相当于IIS6里面的"Web 服务扩展",要在这里有设定为允许的项才能在IIS里面被执行.
    完成这一步之后,再在网站里面的"Default Web Site"添加应用程序.程序名应对应于在注册表中extension_uri的设置.此处为"jakarta",然后将物理路径指向isapi_redirect.dll所在的目录.完成之后点击这个应用程序,进入处理程序映射,点击右手边的"编辑处理程序权限...",把"执行"项勾打上.
    随后为站点添加ISAPI筛选器以便Connector能截取到URL请求.点击"Default Web Site" -> "ISAPI 筛选器" ,把isapi_redirect.dll添加进去,名称可以随便起.
    完成这个步骤以后,Connector就可以对请求进行过滤,把符合配置文件中的请求重写到extension_uri指定的uri进行处理,这里为/jakarta/isapi_redirect.dll,然后isapi_redirect.dll再转发到tomcat的8009由tomcat处理完成后再循原路发回去.

   如对 workers.properties 进行更改,需要重启IIS.另外VISTA下面似乎uriworkermap.properties的动态加载功能也无法正常运行.每次更改也需要重启IIS..

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-94937-1-1.html 上篇帖子: 当eclipse调用tomcat的时候发生了什么? 下篇帖子: IntelliJ IDEA 7.0整合Tomcat配置
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表