`

Windows下Apache HTTPD与Tomcat的整合

阅读更多

一.Apache HTTPD与Tomcat介绍 
     Apache HTTPD(HTTP Server)是当前使用最为广泛的WWW服务器软件,具有相当强大的静态HTML处理的能力。它不但功能强大,而且完全免费,并且支持市场上流行的各种操作系统(Windows,Linux,Mac OS)。 
     Tomcat服务器是一个免费的开放源代码的Web应用服务器,它是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和   其他一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和JSP   规范总是能在Tomcat中得到体现,Tomcat5支持最新的Servlet 2.4和JSP 2.0规范。因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。
     Tomcat和IIS、Apache HTTPD等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。

二.为什么需要整合

整合的最主要原因是为了在现有的硬件条件下提供最大的负载。

如果单独使用Tomcat做JSP服务器,在工作效率上会存在问题,Tomcat对于静态的html文件、图片文件等的解析效率上不如Apache HTTPD,并且所能承受的最大并发连接数也有一定的限制。
在测试中,当并发连接较多时,Tomcat就会处于“僵死”状态,对后继的请求连接失去响应。所以现在提出一个“整合”解决方案:将html与jsp的功能部分进行明确分工,让tomcat只处理jsp部分,其它的由apache HttpD这个web server处理。Apache HttpD与Tomcat各司其职,那么服务器的整体效率就能够得到提升。

三.整合的基本原理

作为Apache下面的子项目,Tomcat 与 Apache HttpD之间有着天然的联系。在实际操作中,主要是Apache HttpD作为主服务器运行,当监听到有jsp或者servlet的请求时,将请求转发给tomcat服务器,由tomcat服务器进行解析后,发回apache HttpD,再由apache HttpD发回用户。

在tomcat中有两个监听的端口,一个是8080用于提供web服务,一个是8009用于监听来自于apache HttpD的请求。当apache HttpD收到jsp或者servlet请求时,就向tomcat 的8009端口发送请求,交由tomcat处理后,再返回给apache HttpD,由apache HttpD返回给客户。


准备工作:
1、  apache HTTP Server 2.2.15
http://apache.etoak.com/httpd/binaries/win32/httpd-2.2.15-win32-x86-openssl-0.9.8m-r2.msi
2、  Tomcat 6.0.26
http://apache.etoak.com/tomcat/tomcat-6/v6.0.26/bin/apache-tomcat-6.0.26-windows-x86.zip
3、  JDK 1.6.0._10
http://java.sun.com/javase/downloads/widget/jdk6.jsp
4、  tomcat-connectors/jk 1.2.30
http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.30/mod_jk-1.2.30-httpd-2.2.3.so

安装,软件的安装顺序可以适当调整,但是jre(jdk)一定要在tomcat之前安装:
1、安装JRE(JDK)
此处选择默认安装即可,(旧版本的JDK安装完之后需要设置系统的环境变量,JRE和JDK1.5.0以后版本不设置也没关系。)安装完成之后你可以选择按照下面的示例设置你的系统环境变量:我的电脑->右键属性->常规->高级->环境变量
CATALINA_HOME=D:\Tomcat6
JAVA_HOME=C:\Program Files\Java\jdk1.6.0_10
注意文件路径要改成你实际安装的路径。

2、Apache安装
此处注意,如果你本机已经装了iis并且占用80端口,务必先在服务中将iis停止或禁用。软件默认安装即可。安装过程中设置Network Domain和Server Name为localhost,设置你的email地址,下方会让你选择only for the current user或for all users。默认选择for all users。这样Apache就会占用80端口,并且做为一个系统服务开机自运行。
Apache的安装目录可以自由决定,我的是D:\Apache2.
安装完成之后,你在浏览器中输入http://localhost ,将会看到Apache的成功页面. 此时Apache,已经运行,你可以在窗口的托盘看到他的图标,双击图标,在弹开的窗口选择"Open Apache Monitor",点Stop,停止Apache服务,因为下面要安装Tomcat和JK.

3、Tomcat安装
选择安装目录为了D:\Tomcat6,其余为默认安装.成功后在浏览器中输入http://localhost:8080 ,出现Tomcat页面表示安装成功了。关于tomcat的设置已经有很多非常详细的文章,在此就不再详述了。

4、JK的安装
把mod_jk-1.2.30-httpd-2.2.3.so拷贝到D:\Apache2\modules\下.
以上安装全部完成后,打开cmd命令提示符,运行d:\Apache\Apache2\bin\Apache.exe -t 你将会看到"Syntax OK",表示Apache配置正常.这个命令非常有用,下面在继续配置Apache的时候还会再次用到。

配置服务器:
1、配置Tomcat
查找Tomcat目录下的 conf/server.xml文件,在<host></host>中间加入以下语句以修改其默认的目录:
<Context path="" docBase="D:\wwwroot" reloadable="true" crossContext="true"/>
在这里,如果 path 不为空,则设置的是虚拟目录,path 的值为虚拟目录名。

查找目录下的conf/workers.properties文件,并对比下方文本内容,如有不同以下方内容为准修改,如果文件不存在则创建并填充以下内容。
workers.tomcat_home=D:\Tomcat6 #让mod_jk模块知道Tomcat的位置
workers.java_home=C:\Program Files\Java\jre6 #让mod_jk模块知道jre的位置
ps=\
worker.list=ajp13 #模块版本
worker.ajp13.port=8009 #工作端口,若没占用则不用修改
worker.ajp13.host=localhost #本机,若上面的Apache主机不为localhost,作相应修改
worker.ajp13.type=ajp13 #类型
worker.ajp13.lbfactor=1 #代理数,不用修改

2、配置Apache
打开D:\Apache2\conf下的httpd.conf,在一系列LoadModule最后加入下面这段代码并保存,其中DocumentRoot、ServerName、DirectoryIndex这几项是原来就存在的,这里要做的是更新它们的设置。

#设置Apache与Tomcat之间的连接,让Apache遇到jsp文件时,在后台将其交由Tomcat去处理
LoadModule jk_module modules/mod_jk-1.2.30-httpd-2.2.3.so
#此处mod_jk的文件为你下载的文件
JkWorkersFile "D:/Tomcat6/conf/workers.properties"
#指定tomcat监听配置文件地址
JkLogFile "D:/Tomcat6/logs/mod_jk2.log"
#指定日志存放位置
JkLogLevel info
JkMount /servlet/* ajp13
#让Apache支持对servlet传送,用以Tomcat解析
JkMount /*.jsp ajp13
#让Apache支持对jsp传送,用以Tomcat解析
JkMount /*.do ajp13
#让Apache支持对.do传送,用以Tomcat解析

#查找到DocumentRoot,并将其设为D:/wwwroot
DocumentRoot "D:/wwwroot" #您的站点项目所在路径,应与tomcat中的目录设置相同
#查找到ServerName,并将其设为localhost,这个因人而异
ServerName localhost
#查找到DirectoryIndex,并在其后增加index.htm index.jsp
DirectoryIndex index.html index.htm index.jsp

# 开头的行为注释,可以删除。实际上,Apache的配置可以非常灵活,你也可以采用虚拟目录的方式。

所有的修改完成这后,再次执行d:\Apache\Apache2\bin\httpd.exe -t 如果看到"Syntax OK",说明你所有配置无误,双击窗口的托盘中的图标,然后点击Start运行。在D:\wwwroot下创建一个页面index.jsp,里面简单的写几句话。
在地址栏中分别输入http://localhost/index.jsp ,与http://localhost:8080/index.jsp 若结果相同,Apache与Tomcat整合成功。

分享到:
评论
2 楼 qq85609655 2012-02-26  
BlueAeri 写道
Apache.exe 写错了,应该是 httpd.exe

欢迎你来到我的博客,你指出错误已经更正,感谢你的支持!
1 楼 BlueAeri 2012-02-24  
Apache.exe 写错了,应该是 httpd.exe

相关推荐

    Windows下Apache与Tomcat的整合

    ### Windows下Apache与Tomcat的整合 在现代Web开发中,Apache与Tomcat的整合是十分常见的场景之一,尤其在企业级应用中更是如此。本文将详细介绍如何在Windows环境下完成Apache与Tomcat的整合,包括配置步骤、注意...

    windows下整合apache和tomcat服务器的方法

    **Apache和Tomcat整合的意义:** Apache因其高效、稳定和安全的特点,成为许多网站首选的Web服务器。然而,对于处理动态内容,如JSP和Servlet,Apache的能力相对较弱。而Tomcat作为一个轻量级的应用服务器,专门用于...

    apache2与tomcat整合

    Apache2与Tomcat整合是为了实现更高效的Web服务部署,特别是在处理高并发和负载均衡时。Apache作为成熟的HTTP服务器,常被用作前端服务器,负责静态资源的处理和动态请求的分发,而Tomcat作为Java应用服务器,主要...

    Windows下Apache整合Tomcat

    NULL 博文链接:https://dacoolbaby.iteye.com/blog/1703393

    ubuntu linux下apache与tomcat的整合.txt

    ### Ubuntu Linux 下 Apache 与 Tomcat 的整合 在 Ubuntu Linux 环境中,Apache 和 Tomcat 的整合是一项常见的任务,旨在实现静态内容通过 Apache 服务器进行高效分发,而动态内容(如 Java 应用)则通过 Tomcat ...

    windows下整合apache和tomcat

    "Windows下整合Apache和Tomcat"的主题涉及到如何在Windows操作系统上设置一个环境,使得Apache能够有效地分发静态内容,而Tomcat则专注于处理JSP和Java Servlet等动态内容。这种配置可以优化网站的性能,因为静态...

    Apache+Tomcat整合

    Apache 与 Tomcat 整合采用 proxy 方式,需要在 Apache 的配置文件 `httpd.conf` 中添加模块和相关配置。首先,确保 Apache 已加载 `proxy_module` 和 `proxy_ajp_module`,这可以通过在 `httpd.conf` 文件末尾添加 ...

    mod_jk各个版本 apache与tomcat 整合

    #### 实例:Windows 下 Apache 2.2.22 与 mod_jk 整合 假设我们正在使用 Windows 7 操作系统,Apache 版本为 2.2.22,那么推荐使用的 mod_jk 版本为: - **下载链接**:...

    Apache与Tomcat整合的简单方法.pdf

    ### Apache与Tomcat整合的简单方法 #### 一、引言 随着互联网技术的发展,越来越多的应用需要同时利用Apache和Tomcat的优势。Apache作为一款稳定、高效且功能强大的Web服务器,而Tomcat则是一款专为Java应用程序...

    Windows下Apache整合Tomcat.doc

    在Windows环境下,将Apache ...总之,Windows下Apache与Tomcat的整合是一个涉及多个配置文件修改的过程,需要细心操作并测试确保配置正确无误。通过这种方式,你可以构建一个能够高效处理静态和动态内容的Web服务环境。

    linux+apache+tomcat整合完整详解版(最新)

    要将 Tomcat 和 Apache 整合起来,我们需要修改 Apache 的配置文件 httpd.conf。首先,我们需要将 ServerName 配置为服务器的 IP 地址或域名,然后在 DirectoryIndex 中添加 index.htm index.jspcfg 保存后退出。 ...

    apache web整合Tomcat工具

    总的来说,这个"apache web整合Tomcat工具"简化了在Windows环境下设置Apache与Tomcat集成的过程,使得开发者可以更专注于应用开发,而不是服务器配置。通过合理配置,可以实现高效的Web服务,既发挥了Apache处理静态...

    Linux下Apache与Tomcat整合

    以下是一个详细步骤,介绍如何在Linux系统上进行Apache与Tomcat的整合。 1. **准备工作** 在开始整合前,确保已安装并配置好Java Development Kit (JDK)。Apache和Tomcat的整合需要用到Java环境。 2. **下载所需...

    Apache2.2+Tomcat5.5整合配置教程

    总的来说,Apache2.2与Tomcat5.5的整合配置涉及下载和安装两个组件,配置Apache的httpd.conf文件,创建和编辑workers.properties,以及调整Tomcat的server.xml。这个过程需要对Web服务器和应用服务器的配置有一定的...

    apache+tomcat整合.pdf

    在讨论Apache与Tomcat的整合之前,首先需要了解Apache和Tomcat的基本概念。Apache HTTP Server(通常简称为Apache)是一个广泛使用的开源网页服务器,它非常擅长处理静态内容,如HTML页面和图片等。而Tomcat是一个...

    Linux6.0下Apache与tomcat 整合支持php html java(编译安装)

    "Linux 6.0 下 Apache 与 Tomcat 整合支持 PHP、HTML、Java(编译安装)" Linux 6.0 下 Apache 与 Tomcat 的整合是指在 Linux 6.0 操作系统中将 Apache 和 Tomcat 服务器整合起来,以支持 PHP、HTML 和 Java 等多种...

    Windows下Apache2.2 + Tomcat5.5 + Apr配置备忘录

    在Windows下配置Apache2.2 + Tomcat5.5时,集成Apr可以提高系统调用的效率,降低CPU使用率,尤其在处理高并发请求时效果显著。 配置步骤大致如下: 1. **下载并安装Cygwin**: Cygwin是一个提供Linux环境的工具集...

    Linux系统下Apache与Tomcat整合的简单方法

    Apache 与 Tomcat 整合是将 Apache 作为前端服务器,负责静态页面的处理和负载均衡,而 Tomcat 作为后端应用服务器,专门处理动态请求。这种整合方式可以充分利用两者的优势,提高系统的稳定性和效率。以下是整合...

Global site tag (gtag.js) - Google Analytics