Win2003中apache2整合tomcat5和IIS6的方法

最开始是用iis直接连接tomcat,找遍了网上所有的资料,可是死活也连不通,或许是iis的封闭吧,看来tomcat与iis远没有成为朋友。
   于是只好另辟蹊径,用apache监听80来做请求转发了,请求到iis的站点就转到相应目录,请求到tomcat下的站点就转发到tomcat下,于是开始到处找这方面的资料,终于经过反复试验,右克服请求servlet出错的困难,现在终于可以继续做自己的网站了。
   参考文档:
   1.http://WEBlife.blogbus.com/s1659/index.html
   2.http://wiki.osportfolio.org/confluence/display/Technical/Apache+Tomcat+mod_jk+Integration
   第一篇文档基本解决了所有的问题,第二篇文档解决了请求servlet发生找不到目标的问题
   下面就从零开始,一步步配置三个服务器,让他们协调工作。
   1.下载安装apache2
   下载apache2.0.55 for windows
   在官方网站上我怎么也找不到,奇怪。下载到本地后双击就可以安装了,安装完成后应该在系统托盘中看到一个小图标了,是个羽毛加绿色播放箭头的图标,这表示正确安装了,如果不能正确安装,请确认80端口没有被别的服务器占有。
   2.下载安装tomcat5
   Tomcat还是到官方网站下载,选择5.5.17中core:zip,我比较习惯用这个压缩包,解压后设置环境变量就可以用了。在安装路径的bin里面运行startup.bat就可以启动tomcat了。
   3.安装IIS6.0
   将win2003的安装盘插入光驱,在添加或删除程序中选择“添加/删除windows组件”在“windows组件向导”中选择“应用程序服务器”并打上勾,按向导提示下一步进行,就可以安装了。IIS6.0安装后并不能正常启动,因为默认端口80被apache已经占了。双击打开“管理工具/internet信息服务(IIS)管理器”,在“默认网站(停止)”上右击选择“属性”,在“网站”选项卡中修改“TCP端口”的80为88或者其他端口,确定。选中“默认网站(停止)”然后单击工具栏中的播放图标,就可以启动IIS了,正常启动后“停止”字样就消失了。
   4.测试3个服务器
   修改Apache安装目录/htdocs中的index.html.en改名为index.html,在浏览器输入http://localhost回车如果看到apache的欢迎界面,说明apache正在运行。在浏览器中输入http://localhost:8080回车如果看到tomcat的欢迎界面,这表示tomcat运行正常。在浏览器中输入http://localhost:88回车如果看到“建设中”这样的提示,表示iis正在运行。
   5.配置apache与tomcat的连接
   第一步: 在http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.6
   下载mod_jk_1.2.6_2.0.50.dll文件,将其改名为mod_jk.so后放到apache2/modules目录中。
  第二步: 打开记事本,输入下列语句,以workers.properties为文件名保存在tomcat安装目录/conf目录下:


代码如下:

workers.tomcat_home=C:\Program Files\jakarta-tomcat-5.0.28
workers.java_home=C:\Program Files\Java\jdk1.5.0_06
ps=\
worker.list=ajp13
worker.ajp13.port=8009
worker.ajp13.host=localhost
worker.ajp13.type=ajp13
worker.ajp13.lbfactor=1

  第三步:用记事本打开apache/conf/httpd.conf文件末尾,添加下面一段:


代码如下:

LoadModule jk_module modules/mod_jk.so
JkWorkersFile "D:\Program Files\jakarta-tomcat-5.0.28\conf\workers.properties"
<VirtualHost *:80>
ServerAdmin rabbit69@openria.com
ServerName localhost
DirectoryIndex index.html index.htm index.jsp
JkMount /* ajp13
JkAutoAlias "C:\Program Files\jakarta-tomcat-5.0.28\webapps"
<Directory "C:\Program Files\jakarta-tomcat-5.0.28\webapps">
Options Indexes FollowSymLinks
allow from all
</Directory>
</VirtualHost>

   保存,停止apache服务,在启动,就可以将新配置应用了。
   6.测试apache与tomcat的连接
   在服务器中输入http://localhost回车如果看见的是tomcat的欢迎界面,就表示apache和tomcat整合成功了,localhost后面加上jsp-examples目录或者servlet-examples目录就可以看到下面的例子,为了让servlet运行,我可是费了半天劲,修改这个httpd.conf文件。
   7.配置apache与IIS6的连接
   第一步:修改httpd.conf文件,启用proxy模块
   将文件中的LoadModule proxy_module modules/mod_proxy.so和LoadModule proxy_http_module modules/mod_proxy_http.so这两句的“#”去掉就可以了。
   第二步:增加IIS的虚拟主机
  在httpd.conf文件末尾加入以下代码:


代码如下:

<VirtualHost *:80>
ServerAdmin rabbit69@openria.cn
ServerName localhost
DocumentRoot "C:/Inetpub/wwwroot"
DirectoryIndex index.html index.htm index.asp
Alias /test "C:/Inetpub/wwwroot"
<Directory "C:/Inetpub/wwwroot">
Options MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
ProxyPass / http://127.0.0.1:88/
ProxyPassReverse / http://127.0.0.1:88
</VirtualHost>

   保存,并重启apache就可以做测试了。
   8.测试apaceh与IIS的连接
  写一个asp页面,hello.asp:


代码如下:

<HTML>
<HEAD>
<TITLE>Hello World Sample</TITLE>
</HEAD>
<BODY>
<% Response.Write "Hello World" %>
</BODY>
</HTML>  

  放到C:/Inetpub/wwwroot下面,在浏览器中访问http://localhost/test/hello.asp回车如果出现“hello world”字样就表示配置成功了。如果页面出现空白,在Internet信息服务(IIS)管理器中的web服务扩展里将“active server page”允许,然后清空缓存,刷新页面应该就可以看见hello world了。
   具体参数的含义就不多说了,上面的参考文档有介绍。
   后记:
  一直以为这个整合问题解决不了了,但是我还是不甘心,为什么别人能调通,我就调不通,苦脑啊,今天终于解决了,昨天晚上还弄到1点多,所有的辛苦没有白下,写下这个,做个纪念,也希望能对碰到此问题的网友有帮助,没有互联网就没有大家的成长。

(0)

相关推荐

  • Jsp和PHP共用80端口整合Apache和Tomcat(访问时无需加端口号)

    目的: 整合Apache和Tomcat,使得Java工程和PHP工程都能共用80端口,访问网站时,无需在地址栏中加端口号. 环境说明: Linux CentOS 32位 Apache 2.2.2 Tomcat 7.0.37 准备工作: 下载mod_jk.so http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/ 打开链接找到合适的文件下载,下载后改名为mod_jk.so 修改Apache相关文件 1.将mod_j

  • Apache2.2以上版本与Tomcat整合配置及负载均衡实现

    今天技术总监叫实现Apache和Tomacat整合,在网上找了很多资料,结果发现还是这个最方便! 下面是实现2个tomcat实现负载均衡,如果只有一个则可删除一个 apache2.2以上版本,无需使用jk_mod来集成tomcat,直接使用ajp,很方便. 修改apache配置文件httpd.conf 启用mod_proxy_ajp 复制代码 代码如下: #LoadModule proxy_module modules/mod_proxy.so #LoadModule proxy_ajp_mod

  • Apache与Tomcat服务器整合的基本配置方法及概要说明

    首先,当然是安装Apache HTTP Server,并准备mod_jk.so文件,这些都可以在http://apache.org中找到,要注意的是,mod_jk.so的版本要和Apache HTTP Server的版本对应,如果没有对应的就要自己重新编译Apache,但是一般没必要,肯定会有对应版本. 开始: 1.安装Apache HTTP Server,Server Name 和 Domain Name 均为127.0.0.1 2.将mod_jk.so复制到Apache安装目录的module

  • win7下Apache2.2+Tomcat7.0整合配置详解

    一.简单介绍 Apache.Tomcat Apache HTTP Server(简称 Apache),是 Apache 软件基金协会的一个开放源码的网页服务器,可以在 Windows.Unix.Linux 等操作系统中运行是最流行的Web服务器软件之一.Apache 反应速度快,运行效率高,但只支持HTML等静态页面(加载插件后也可支持 PHP 页面). Apache Tomcat 是由 Apache 软件基金协会与 Sun 公司联合开发的一款Web服务器,它除了支持HTML等静态页面外,还支持

  • Apache和Tomcat服务器间的区别、联系、整合详细介绍

    Apache 和 Tomcat 都是web网络服务器,两者既有联系又有区别,在进行HTML.PHP.JSP.Perl等开发过程中,需要准确掌握其各自特点,选择最佳的服务器配置. Apache是web服务器(静态解析,如HTML),tomcat是java应用服务器(动态解析,如JSP.PHP) Tomcat只是一个servlet(jsp也翻译成servlet)容器,可以认为是apache的扩展,但是可以独立于apache运行 两者从以下几点可以比较的: 1.两者都是apache组织开发的 2.两者

  • Win2003中apache2整合tomcat5和IIS6的方法

    最开始是用iis直接连接tomcat,找遍了网上所有的资料,可是死活也连不通,或许是iis的封闭吧,看来tomcat与iis远没有成为朋友. 于是只好另辟蹊径,用apache监听80来做请求转发了,请求到iis的站点就转到相应目录,请求到tomcat下的站点就转发到tomcat下,于是开始到处找这方面的资料,终于经过反复试验,右克服请求servlet出错的困难,现在终于可以继续做自己的网站了. 参考文档: 1.http://WEBlife.blogbus.com/s1659/index.html

  • Windows中Tomcat整合到Eclipse的图文教程

    这里使用的是Eclipse Java EE IDE for Web Developers 4.7.1a,Apache Tomcat 8.0.47. 两个都依赖JDK,请事先安装配置好JDK. 首先,要下载tomcat,下载地址:https://tomcat.apache.org/download-80.cgi,下载64-bit Windows zip. 下载后,是这样的: 解压到软件安装位置,添加tomcat的bin路径到系统环境变量. 鼠标右击"计算机"选择"属性"

  • 详解IDEA中SpringBoot整合Servlet三大组件的过程

    Spring MVC整合 SpringBoot提供为整合MVC框架提供的功能特性 内置两个视图解析器:ContentNegotiatingViewResolver和BeanNameViewResolver 支持静态资源以及WebJars 自动注册了转换器和格式化器 支持Http消息转换器 自动注册了消息代码解析器 支持静态项目首页index.html 支持定制应用图标favicon.ico 自动初始化Web数据绑定器:ConfigurableWebBindingInitializer Sprin

  • .Net Core项目中NLog整合Exceptionless实例

    目录 前言 概念 Exceptionless NLog 环境搭建 Exceptionless搭建 集成NLog 简单测试一下 总结 前言 在实际的.Net Core相关项目开发中,很多人都会把NLog作为日志框架的首选,主要是源于它的强大和它的扩展性.同时很多时候我们需要集中式的采集日志,这时候仅仅使用NLog是不够的,NLog主要是负责代码中日志的落地,也就是收集程序中的日志.类似的使用ELK(Elasticsearch+Logstash+Kibana)或EFK(Elasticsearch+F

  • FastDFS安装和配置整合Nginx-1.13.3的方法

    一:下载FastDFS 我们一共需要三个文件 1.FastDFS 分布式文件存储系统 下载地址:https://codeload.github.com/happyfish100/fastdfs-client-java/zip/master 2.libfastcommon FastDFS函数库 下载地址:  https://codeload.github.com/happyfish100/libfastcommon/zip/master 3.fastdfs-nginx-module 连接Nginx

  • 解决JSP开发中Web程序显示中文三种方法

    方法一:最简单也是用的最多的方法 <%@ page language="java" pageEncoding="GBK" %> 或者<%@ page contenttype="text/html;charset=gbk";>这里可以用gb2312或者gbk,只是gbk比gb2312支持跟多的字符. 这个方法用于jsp页面中的中文显示. 方法二:使用过滤器 过滤器使用主要针对表单提交,插入数据库的数据都是?号.这也是应为to

  • Spring整合Struts2的两种方法小结

    spring提供了一个ContextLoaderListener,该监听类实现了ServletContextListener接口.该类可以作为Listener使用,它会在创建时自动查找WEB-INF/下的applicationContext.xml文件,因此如果只有一个配置文件且配置文件命名为applicationContext.xml,则只需在web.xml文件中增加如下配置片段: <!-- 使用ContextLoaderListener初始化Spring容器 --> <listene

  • CI框架整合widget(页面格局)的方法

    本文实例讲述了CI框架整合widget(页面格局)的方法.分享给大家供大家参考,具体如下: 在WEB开发过程中,我们免不了要输出视图文件,而通常视图文件又一般都少不了头部.左侧栏以及底部这些公共元素. 如何让整个项目开发在涉及视图套用时引入敏捷的思维,提高效率呢?就不得不提一下widget.承然你也大可以使用HMVC模型. 这里仅介绍下widget如何结合入CI框架中: 1.在类文件MY_Controller.php中添加调用方法: /* * 如果$name存在则调用widget类及widget

  • Spring 整合多个配置文件的方法

    对于一个大型应用来讲,可能存在多个配置文件.我们可以在启动 Spring 容器时,通过 String 数组来指定这些配置文件 . Spring 还可以通过 <import> 将多个配置文件引入到一个文件中,集成这些配置文件,这样在启动 Spring 容器时,仅需要指定这个主配置文件即可 . 比如以下的这个主配置文件: <import resource="classpath:beans2.xml"/> <bean id="author"

  • Java中判断对象是否为空的方法的详解

    首先来看一下工具StringUtils的判断方法: 一种是org.apache.commons.lang3包下的: 另一种是org.springframework.util包下的.这两种StringUtils工具类判断对象是否为空是有差距的: StringUtils.isEmpty(CharSequence cs); //org.apache.commons.lang3包下的StringUtils类,判断是否为空的方法参数是字符序列类,也就是String类型 StringUtils.isEmpt

随机推荐