IIS和Tomcat共存于服务器并且共用80端口,一直以来都是业界一个比较大的疑问,网上也有很多相应的案例说明,但经过本人的测试,几乎不行,在此分享IIS、Tomcat共存于windows下共享80端口给各位客户朋友。
系统配置
操作系统:Windows Server 2003(服务器操作系统)
JDK : JDK 6.0
Tomcat: Tomcat 7.0
IIS:IIS 6.0
JK: isaip_redirect-1.2.14
首先安装好服务端Tomcat 7.0和IIS 6.0在Windows Server 2003中已经自带,确认IIS和Tomcat都能正常访问
注意:这里IIS使用80端口,Tomcat使用8080端口(可以任意改,不要使用80端口)
IIS正常访问
Tomcat正常访问
4.基本工作完成了,下面进行整合,共享80端口
安装isapi_redirect-1.2.14,安装非常简单,一只next即可
注意:这里我安装服务器:C:\web\isapi
打开IIS管理界面,查看默认站点(没有的话,重启下就有了)
中的jakarta的虚拟目录
并查看属性中
是否存在jakarta的筛选器。至于向上的绿色箭头可能没有(网上很多都指出要求由此,实际上只有配置之后首次访问的时候,才进行加载)只要不是红色就可以。
如果没有则创建,
添加筛选器 名称jakarta 文件地址 C:\web\isapi\bin\isapi_redirect.dll
创建虚拟目录
别名 jakarta (必须) 路径 C:\web\isapi\bin\
访问权限
我们在tomcat webapps下面随便建立个工程 我这里是目录名tomcat
修改配置文件
C:\web\isapi\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
/tomcat/*=wlb
我们重启tomcat 和 iis 并访问测试
iis的重启可以通过鼠标右键我的电脑 --> 管理 进行重启
之后既可以通过http://localhost/tomcat/index.jsp访问我们的J2EE项目,不需要输入端口,因为IIS使用的是80端口,系统默认的端口,然后IIS将tomcat/*下的所有url请求转发到Tomcat中去解析jsp
这要就成功整合的IIS和Tomcat共享80端口了
还要说的就是,如果IIS里面已经部署了其他asp.net应用程序,
就必须在每个项目里面建立虚拟目录jakarta,具体的操作轻参照上述。