首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 服务器 > IIS >

服务器环境筹建系列 I - Tomcat在IIS6.0中的部署

2013-10-08 
服务器环境搭建系列 I - Tomcat在IIS6.0中的部署场景需要在客户服务器上进行项目部署实施:客户提供的服务

服务器环境搭建系列 I - Tomcat在IIS6.0中的部署

场景

需要在客户服务器上进行项目部署实施:客户提供的服务器只有Windows平台;客户可提供的二级域名有限,或无法提供二级域名; 服务器所在网络监管很严格,一般只开放80服务端口(如需开放其他端口则需要较长审批流程),无法通过VPN或FTP方式进行后期系统维护;客户服务器环境为:Windows 2003IIS 6.0(.Net Frameworks 2.0+)项目部署环境要求:Java 1.6+Tomcat 6.0+MySQL解决方案1.准备工作?
1.1 通过Google搜索解决方案:
? ? 文章[1]所述仅供参考(你也知道国内的技术文章水平大致是怎样的),但:
????不建议采用 注册表 方式来配置 isapi_redirector.dll 的相关属性,而是使用properties文件形式。即将isapi_redirector.properties 文件放置在和 isapi_redirector.dll 同一目录下。这样便于多个站点使用不同的 isapi_redirector 配置。

????对于 workers.properties 和 uriworkermap.properties 建议详细参考 Apache Tomcat Connector 的文档[2]。
1.2 在本地搭建模拟部署实施环境 - IIS上搭建项目部署所需环境准备工作如下: JDK 环境搭建 - 注意增加系统环境变量中JAVA_HOME建立网站根目录(一般用来放置所有静态资源) -? path\to\project-deploy\example.com建立项目应用服务文件夹 - path\to\project-deploy\system-packages下载 Tomcat 并放置在项目文件夹下? ?path\to\project-deploy\tomcat6-server下载 isapi_redirector.dll 并放置在项目文件夹下? ?path\to\project-deploy\isapi-redirector最终目录结果如下图所示(建议在本地模拟环境及客户服务器部署环境中使用类似方式组织项目,便于后期维护):服务器环境筹建系列 I - Tomcat在IIS6.0中的部署

2.模拟环境搭建?
2.1 建立 IIS 站点在IIS中新建站点(如 www.example.com),注意打开『脚本执行权限』服务器环境筹建系列 I - Tomcat在IIS6.0中的部署
并新建对应的应用程序池(如 example.com)服务器环境筹建系列 I - Tomcat在IIS6.0中的部署
将新建站点指定应用程序池为 example.com服务器环境筹建系列 I - Tomcat在IIS6.0中的部署
2.2 全局公共配置方式 - 添加IIS扩展的?isapi_redirector在IIS的『Web服务扩展』中添加新的服务扩展 - 扩展名可自定义服务器环境筹建系列 I - Tomcat在IIS6.0中的部署
将isapi_redirect.dll(可以是带有版本号的dll文件)加入,并将其设为『允许』状态服务器环境筹建系列 I - Tomcat在IIS6.0中的部署最终如下图所示服务器环境筹建系列 I - Tomcat在IIS6.0中的部署
2.3 局部站点配置方式 - 在新建站点 example.com 中配置ISAPI筛选器首先,删除新建 example.com 站点中所有不使用的 ISAPI 扩展服务器环境筹建系列 I - Tomcat在IIS6.0中的部署
增加『ISAPI筛选器』。服务器环境筹建系列 I - Tomcat在IIS6.0中的部署
刚建立完备后,kvm筛选器状态和优先级都处于“未知”状态。可参考Microsoft提供的相关帮助说明(红色线框部分)服务器环境筹建系列 I - Tomcat在IIS6.0中的部署
新建虚拟目录 - tomcat_srv,注意建立的虚拟目录名称需与 isapi_redirect.properties 中相对应服务器环境筹建系列 I - Tomcat在IIS6.0中的部署
虚拟目录? tomcat_srv?物理路径需指向 isapi_redirector.dll 所在目录:服务器环境筹建系列 I - Tomcat在IIS6.0中的部署
注意打开『可执行』权限服务器环境筹建系列 I - Tomcat在IIS6.0中的部署
2.4 修改isapi_redirect.dll对应配置文件服务器环境筹建系列 I - Tomcat在IIS6.0中的部署主要修改上图所示部门内容,其中:extension_uri - 对应IIS站点虚拟目录(如之前建立的虚拟目录tomcat_srv)下的isapi_redirect.dll;log_file - 存储isapi_redirect.dll运行时log的绝对路径;work_file、worker_mount_file - 对应相关配置文件的绝对路径;
2.5 workers.properties 和 uriworkermap.properties 配置uriworkermap.properties的相关配置如下图所示:服务器环境筹建系列 I - Tomcat在IIS6.0中的部署主要是为了将所有uri请求进行划分,将不同请求分配给不同的tomcat worker处理(在workers.properties中定义的),有些则直接交给IIS处理。比如第3行中的
? ? /=pm80
即是将直接域名请求交由 pm80 这个tomcat worker来处理,至于 pm80 是哪个tomcat,则在下面的?workers.properties 的相关配置中定义:服务器环境筹建系列 I - Tomcat在IIS6.0中的部署很显然,pm80 这个 tomcat worker 是在本机(localhost)的 9000 端口通过?ajp13 交互协议进行监听的一个tomcat server。其他 worker 也是类似。
另外就是,worker.list 列出了所有 worker 的名字,这些名字对应到每节
worker.<名字>.port=9000worker.<名字>.host=localhostworker.<名字>.type=ajp13worker.<名字>.lbfactor=1

lbfactor用于负载均衡处理,在没搞透 tomcat connector 相关说明前,不建议使用其自带的 load balancer。
2.6 Tomcat 相关配置修改如下图所示服务器环境筹建系列 I - Tomcat在IIS6.0中的部署
注意
    其中各个端口的分配(凡是 port 属性值都要仔细检查) - 是否被占用?<Context data-path="/pm81" ... /> 是与前面uriworkermap.properties中相对应的。


存在(遗留)问题没有及时总结,有些内容记不清楚,可以在实际中实验是否正确。

建议还是要及时总结吖,童鞋们!

参考
    实站iis6.0+tomcat6.0+jk整合(用于初步了解大概怎么回事儿) - ?http://hi.baidu.com/hfr6666/blog/item/fb76e8386057d82a96ddd8e4.htmlApache Tomcat - IIS Howto(仅供参考,有些说法估计是为了省事儿 dummies,并不准确) -?http://tomcat.apache.org/connectors-doc/webserver_howto/iis.html Apache Tomcat Connector Documents(实际还是靠这个) -?http://tomcat.apache.org/connectors-doc/index.html

工具isapi_redirector -?http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/

热点排行