IIS6.0+Tomcat7.0整合总结(推荐)_Tomcat

(一)   为什么要把IIS、Tomcat整合到一起?
假如你遇到这种情况,你开发了一个javaweb项目要部署到服务器上,但是这个服务器上已经部署了asp、asp.net或者PHP项目都在IIS环境下运行着,这时你的tomcat就不能再用80这个端口了,这时你就必须考虑整合iis与tomcat一起工作。网上收集了很多关于tomcat与iis整合的文章,多数写的含糊不清,疏忽每一个细节都很难整合成功,经过分析实践,我决定花费一点时间把这个总结分享出来,希望对用的到的朋友能有所帮助。

(二)   下面介绍我整合成功的软件环境:

ü  服务平台 window server 2003
ü  IIS6.0(大多服务器上默认都已经安装过了)
ü  apache-tomcat-7.0.29.exe(建议到官网下载,我这里是安装版的)
ü  jdk-7u1-windows-7.0.exe(建议到官网下载)
ü  isapi_redirect-1.2.14.exe(我这里采用的是安装版的,非安装版的需要手都编写配置文件和手动配置注册表,其原理都是一样,为了避免出错、方便建议采用安装版的)
下载地址:http://www.jb51.net/softs/186731.html

(三)   软件安装是安装顺序是非常有必要的,下面是软件安装的先后顺序:

IIS6.0  =>  JDK  =>  Tomcat  => isapi_redirect,你可以按照这个顺序也可以不按照,但是顺序的前提是:IIS一定要优先于isapi_redirect 否则isapi_redirect安装会找不到IIS导致配置不正确,JDK一定要优先于Tomcat 否则安装Tomcat会找不到JRE导致无法安装。另外JDK也最好优先于isapi_redirect。

JDK环境变量的设置:

使用鼠标右击“我的电脑”->属性->高级->环境变量
系统变量->新建->变量名:JAVA_HOME 变量值:C:\Program Files\Java\jdk1.7.0_01
系统变量->新建->变量名:CLASSPATH 变量值:.;%JAVA_HOME%\lib
系统变量->编辑->变量名:Path 在变量值的最前面加上:%JAVA_HOME%\bin;
CLASSPATH中有一英文句号“.”后跟一个分号,表示当前路径的意思
Tomcat环境变量的设置:
使用鼠标右击“我的电脑”->属性->高级->环境变量
系统变量->新建->变量名:tomcat_home 变量值:D:\Program Files\Apache Software Foundation\Tomcat 7.0

(四)   验证软件安装是否正确:

ü  验证isapi_redirect是否安装正确:isapi_redirect的安装目录可以自己定义,网上说必须要安装在tomcat跟目录,这个没必要。
安装完毕isapi_redirect后你会发现IIS默认网站下会出现一个虚拟目录jakarta

右击虚拟目录jakarta 查看属性

是否存在jakarta的筛选器。至于向上的绿色箭头可能没有(网上很多都指出要求由此,实际上只有配置之后首次访问的时候,才进行加载)只要不是红色就可以。 到次为之说明您的isapi_redirect安装正确。

ü  验证JDK是否环境变量配置是否正确,开始=》运行=》输入cmd =》输入java命令或者javac或者java –version是否出现相应命令的结果,如果有则说明JDK配置正确
ü  验证tomcat是否安装正确:浏览器中输入http://localhost:8080 是否出现

如果出现这个页面则说明tomcat安装正确;

注意:检查tomcat安装目录下的lib目录是否包含tools.jar文件,如果没有到JDK中复制一个到tomcat的lib目录下,tools.jar这个文件至关重要,否则isapi_redirect就不能正常的工作。

ü  验证iis是否工作正常 浏览器中输入 http://localhost 是否出现

如果出现则说明iis工作正常
以上验证都没有出现问题的话,那么我们的准备工作就完成了。下面我们就进行相应的配置工作。

(五)   Tomcat的配置:

在tomcat的配置主要是配置虚目录,打开tomcat的server.xml文件,加入

<Host name="test.jb51.net" appBase="D:\webroot" uppackWARs="true"
            xmlValidation="false" xmlNamespaceAware="false">
        <Context path="" docBase="D:\webroot" debug="0" reloadable="true"/>
</Host>

name:对应的是你项目的域名;
appBase:虚拟目录的路径;
doBase:项目的顶级目录就相当于webapps 中的目录名称;
配置完成后记得把你的项目复制到D:\webroot目录下,我的项目是ecshoping
注意:tomcat的端口为默认端口8080不要修改
为了验证你的虚拟目录配置是否正确,打开浏览器输入:test.jb51.net:8080 看看是否可以访问你的项目,如果可以则说明你的项目在tomcat中的部署是正确的。
注意:如果防火墙开启了,注意在防火墙的例外里添加端口:8080 保证该端口对外开放。另外要保证你的域名解析正确
 
(六)   IIS配置:

ü  新建网站,名称随意

【网站IP地址】:(全部未分配)
【此网站的主机头】:域名(同tomcat\conf\server.xml <Host>标签的"name"属性中的域名相同)
【网站主目录路径】:虚拟路径+文件夹名(tomcat\conf\server.xml<Host>标签的"appBase"属性中的虚拟路径 加上<Context>子标签的"docBase"属性的文件夹名) 勾选【允许匿名访问网站】
【允许下列权限】:读取、运行脚本、执行
ü  在此网站下建立虚拟目录 名称:jakarta(必须)
【路径】: isapi_redirect 安装目录\bin (isapi_redirect.dll的目录)
【允许下列权限】:读取、运行脚本、执行
ü  网站-->右键-->属性:
1)        【ISAPI筛选器】-->添加--> 【筛选器名称】:jakarta 【可执行文件】: isapi_redirect安装目录\bin\isapi_redirect.dll (isapi_redirect.dll文件)
2)        【文档】:-->添加-->【默认内容页】:比如index.jsp(对应网站默认首页) -->确定-->把其余的都删掉
ü  Web服务扩展-->右键-->添加一个新的Web服务扩展:【扩展名】:jakarta(必须)
【要求的文件】: isapi_redirect安装目录\bin\isapi_redirect.dll (isapi_redirect.dll文件)
勾选【设置扩展状态为允许】保存

(七)   isapi_redirect的配置

打开isapi_redirect目录下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
/ecshoping/*=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
/*.jsp=wlb
/*.action=wlb
/*.do=wlb
/*=wlb 
 
解释:wlb可理解为过滤器名称

/*.jsp等等 为请求过滤的规则,isapi_redirect判断当iis收到该请求时交给tomcat处理。/ecshoping/*=wlb  指定你要过滤的项目
打开isapi_redirect目录下conf目录,修改workers.properties.minimal文件,该文件的内入如下:
# 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=wlb,jkstatus
 
#
# 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
 
#
# Defining a load balancer

 
worker.wlb.type=lb
worker.wlb.balance_workers=ajp13w
 
#
# Define status worker
#
 
worker.jkstatus.type=status
 
该文件为默认的配置,一般不需要修改,保证跟以上一致就行
到此为止你可以倒杯咖啡来享受一下整合成功的喜悦了。此时你输入你的域名就可以直接访问你的javaweb项目了,而不用再加8080端口了。当iis接受到一个jsp网站isapi_redirect会转发到tomcat处理,然后将处理结果再返回给客户。

时间: 2024-08-30 17:04:50

IIS6.0+Tomcat7.0整合总结(推荐)_Tomcat的相关文章

升级log4j2,tomcat--7.0.16 启动就OOM,蛋疼的问题

升级log4j2 ,官网说要web.xml里的<web-app> version 属性改成3.0,发现改了之后,一起动就报错OOM, Exception in thread "main"  Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "main" 发现改成2.5就没事: <web-app xmlns="ht

window7下Tomcat7.0安装配置方法_Tomcat

因为已经安装过jdk1.6,并且jdk的环境变量已经配置完成. 下面主要讲述Tomcat7.0的安装过程: 1.首先在http://tomcat.apache.org/download-70.cgi中下载"32-bit/64-bit Windows Service Installer" 1).一直下一步,中间需要选择安装路径和 JVM 目录,如果JDK和JRE安装没问题,这里他应该能自动找得到,否则需要你手动指定一下. 中间什么也不用管,有一部让你设置端口,不用动,保持默认的就行了.

Tomcat7.0安装配置详细(图文)_Tomcat

 说明:Tomcat服务器上一个符合J2EE标准的Web服务器,在tomcat中无法运行EJB程序,如果要运行可以选择能够运行EJB程序的容器WebLogic,WebSphere,Jboss等 Tomcat的下载: http://tomcat.apache.org/  1.进入上面的网站然后如下操作使用Window Service Installer(为Window 添加服务) 2.然后我们进行安装 说明一下: 以前的版本是没有关于Role的设定,到了7.0的时候就有有关的设定,这也说明Tomc

Win7系统下tomcat7.0配置教程_Tomcat

接着之前的文章Java环境变量配置教程进行学习,下面针对tomcat进行配置,以Windows7为例,希望能帮助到大家. 1.到http://tomcat.apache.org下载下载Tomcat7.0相应版本  Windows系统最好下载ZIP包:Linux系统最好下载tar包.  看到书上说,最好不要下载Tomcat的安装文件,因为安装文件启动时是看不到控制台命令输出的.  2.将相应ZIP文件解压到本机任意目录下,本人安装时将其解压到: D:\Chuang-Study\apache-tom

windows下tomcat7.0安装图文教程_Tomcat

这是windows下tomcat 7.0的安装步骤. 方法/步骤 双击.exe安装程序,显示如下图所示的欢迎页面. 点击next按扭出现如下图所示的页面 点击Agree按钮出现下图所示的页面 选择你需要安装的组件(一般按照默认选择安装就可以啦),点击next按钮出现下图所示的页面 默认选择,点击next按钮进行下一步安装 经过以上步骤Tomcat7.0安装完毕!点击Finish结束安装.

requested-我的myeclipse 2014 tomcat7.0开发一个小项目时突然变成了这个样子

问题描述 我的myeclipse 2014 tomcat7.0开发一个小项目时突然变成了这个样子 HTTP Status 404 - /DaoMei/ type Status report message /DaoMei/ description The requested resource is not available. 所有的页面都是这个样子. 我是一边调试一边谢代码的.调试的过程中就变成了这样,所有的页面都打不开. 解决方案 Eclipse工具栏project重新clean一遍 解决方

tomcat8 0 服务器-Tomcat8.0可以和Tomcat7.0一起部署到同一个服务器上么,部署时有哪些注意点?

问题描述 Tomcat8.0可以和Tomcat7.0一起部署到同一个服务器上么,部署时有哪些注意点? 目前服务器上已经部署了Tomcat7.0,我需要在上面再部署一个Tomcat8.0,具体怎么部署.(求详细部署步骤) 解决方案 可以,在不同的目录下解压,然后修改conf目录下的server的端口号,具体参考下面 http://blog.163.com/hegonghe@126/blog/static/50004810200871483335100/

tomcat-Myeclipse10.7版本装Tomcat7.0,但是进行连接时,出现报错,请大神解答!

问题描述 Myeclipse10.7版本装Tomcat7.0,但是进行连接时,出现报错,请大神解答! 换过Myeclipse10.7版本准备装Tomcat7.0,就出现这错误,机子上还装有Eclipse.请问应该怎么做,求大神解答.在线等 解决方案 用15 稳定版,10版,个人觉得不好用, 解决方案二: 用低版本试试,版本太高了也容易出现问题 解决方案三: eclipse上貌似用不了tomcat吧,在myeclipse上找到tomcat7的路径,jdk路径也要正确

Tomcat7.0.26的连接数控制bug的问题排查

感谢同事[空蒙]的投稿. 首先感谢@烈元一起排查此问题.今天发现线上一台机器,监控一直在告警,一看是健康检查不通过,就上去查看了下,首先自己curl了下应用的url,果然是超时没有响应,那就开始按顺序排查了: 1. load非常低,2.gc也正常,3.线程上也没死锁,4.日志一切正常.那是什么情况呢,不能忘记网络啊.果然,netstat命令一把,结果如下: TIME_WAIT 68 CLOSE_WAIT 194 ESTABLISHED 3941 SYN_RECV 100 问题出来了,SYN_RE