Apache和Tomcat的整合
1、web架构
首先上图,解释web通用架构
通常情况下分为三大块 :
★ Web server : 通常情况下由 Apache Http Server 、 IBM Http Server 、IIS(很少用到) 组成,可以是一个或者多个 ,企业应用程序走WebServer访问,防止将应用EAR包、War
包暴漏在外网环境,增加系统的安全性,同时可用来分发用户请求(在集群的环境下),解析静态文件(例如js,img,css等文件)降低应用程序的压力(在很多应用程序中访问静态文件走的是系统Action
来获取,这样子达不到降压的效果,WebServer组件会将其当作为动态资源去获取).
★ App Server : 通常为我们的web容器 Tomcat、Weblogic、WebSphere、Jboss 等 ,应用程序运行在web容器中,应用服务器一般都有多个,其和WebServer的链接必定是通过企业内网
如果是外网链接那么这样的架构也就失去了意义 .
★ DB Server : 这个一看就知道是什么了,数据库服务器 .
生产环境下,外网用户通过WebServer层来访问系统,在安全性要求不是非常高的情况下,内网用户可以直接访问AppServer,一般情况下企业员工也不会对企业应用进行攻击,如果存在这样的人,那
就要从自身素质考虑的 嘿嘿...
2、Apache + Tomcat
Ⅰ说明
Apache Http Server 为apache下opensource项目,是应用比较广泛的Web Server组件,可以到官网下载安装http://httpd.apache.org/
Ⅱapache的安装
实验环境在window下直接双击安装程序进行安装,在Linux下请参考官网指南 http://httpd.apache.org/docs/2.2/install.html 写的很详细.
Next 到下面的界面
Server Name 需要配置正确,使用计算机名(保证能ping通) 如图 :
填写完毕后继续Next
选择自定义安装后Next
设置安装路径 不要有中文或者空格
开始安装Install
安装完成以后在屏幕右下角出现:
点击该图标
表示当前apache在运行.
开始菜单增加了apache的信息
打开浏览器输入 http://localhost 得到如下结果:
至此 apache 安装成功 ! 耶...
Ⅲ Apache Http Server 配置
找到安装目录 conf/httpd.conf 文件并打开,搜索documentRoot字段

将DocumentRoot修改如下:
|
继续往下修改,找到
|
# # This should be changed to whatever you set DocumentRoot to. # 将<Directory "D:/software/Apache2.2/htdocs">修改如下 #<Directory "D:/software/Apache2.2/htdocs"> <Directory "D:/deployment"> |
修改完毕以后测试一下修改配置文件是否正确

如果正确则命令行窗口会一闪而过。
通过以上的配置将apache的工作文件目录修改到了d:\deployment文件夹下,因此在d盘下创建对应的目录,并建立一个index.html文件。apache 默认访问文件目录下index.html文件,在httpd.conf
文件中设置 :
|
# # DirectoryIndex: sets the file that Apache will serve if a directory # is requested. # <IfModule dir_module> DirectoryIndex index.html </IfModule> |
建立目录如下:

重启apache

访问 http://localhost

Ⅳ tomcat的安装
tomcat的安装应该是每个开发人员都会的,这里使用的是解压版的tomcat7

Ⅴ 整合
准备工作都已完毕,整合开始
apache 只能解析静态的文件(例如刚访问的index.html,但是遇到index.jsp就无法解析),如果遇到动态的文件就需要交给web容器来解析(这里是tomcat)。
那么如何将动态资源的解析交给tomcat的 ???
apache有一个叫mod_jk的模块,通过配置表示式后将请求通过mod_jk 然后传递给tomcat 。
操作步骤:
1. 加入mod_jk模块
该模块名称为: mod_jk-1.2.31-httpd-2.2.3.so,将其加入到apache安装目录下modules下

2. 配置解析表达式
打开httpd.conf文件,在文件末尾追加如下内容:
|
LoadModule jk_module modules/mod_jk-1.2.31-httpd-2.2.3.so JKWorkersFile conf/workers.properties JkLogFile logs/mod_jk.log <VirtualHost *> DirectoryIndex index.html index.htm index.jsp index.action ErrorLog logs/error_log.txt CustomLog logs/access_log.txt common JkMount /*WEB-INF ajp13 JkMount /*.action ajp13 JkMount /servlet/* ajp13 JkMount /*.jsp ajp13 JkMount /*.do ajp13 JkMount /*.action ajp13 JkMount /*.json ajp13 JkMount /WebDemo/HelloWorld ajp13 </VirtualHost> |
该段配置作用如下:

在conf目录下建立worders.properties文件,其内容如下
|
workers.tomcat_home=D:/software/apache-tomcat-7.0.53-windows-x86/apache-tomcat-7.0.53 ps=/ worker.list=ajp13 worker.ajp13.port=8009 worker.ajp13.host=localhost worker.ajp13.type=ajp13 |
√ workers.tomcat_home:用来指定tomcat的位置
√ worker.list :指定工作的的web容器映射
√ worker.ajp13.host : 访问host
√ worker.ajp13.type: 访问协议
在tomcat安装目录conf/server.xml文件中指定了8009端口访问的协议

3. 在tomcat中部署应用,通过apache来访问
通过maven创建了一个web工程 打包为WebDemo,放入tomcat的webapps目录下,启动tomcat并重启apache,访问 http://localhost/WebDemo 得到

出错了! 这是正常的,此时还需要将webapps下的WebDemo文件夹复制到d:/deployment下,复制好后将其中的WEB-INF文件夹删除(这部分的内容将通过JkMount表达式来传递)
操作完成以后重新访问http://localhost/WebDemo/ 得到(该页面是直接访问d:/deployment目录下的静态文件)

点击链接得到(tomcat解析返回的) :

至此,整合完毕.
运行图如下:

注意需要网络管理员屏蔽8080端口.
下一篇将具体来描述一下创建的maven工程,对maven进行一个快速入手.
Apache和Tomcat的整合的更多相关文章
- Apache与Tomcat的整合
一 Apache与Tomcat比较联系 apache支持静态页,tomcat支持动态的,比如servlet等. 一般使用apache+tomcat的话,apache只是作为一个转发,对jsp的处理是由 ...
- Apache和Tomcat的整合过程(转载)
一 Apache与Tomcat比较联系 apache支持静态页,tomcat支持动态的,比如servlet等. 一般使用apache+tomcat的话,apache只是作为一个转发,对jsp的处理是由 ...
- Windows(Vertrigo)下Apache与Tomcat的整合
为了实现整合,上网找了很多资料!尝试了很多次,终于成功整合了!下面我就把整合过程分享给大家,希望能给以后有需要的人提供帮助. 准备工作: 1.VertrigoServ 2.23 下载地址: http ...
- [WebServer] Windows下Apache与Tomcat的整合
转自:http://bbs.blueidea.com/thread-2873268-1-1.html 准备工作:1. Apache 2.2.4下载地址:http://cztele1.skycn.com ...
- 第一篇、Apache和Tomcat的整合
1.web架构 首先上图,解释web通用架构 通常情况下分为三大块 : ★ Web server : 通常情况下由 Apache Http Server . IBM Http Server .I ...
- Apache与Tomcat整合
Apache与Tomcat整合 一 Apache与Tomcat比较联系 apache支持静态页,tomcat支持动态的,比如servlet等. 一般使用apache+tomcat的话,apache ...
- Apache与Tomcat整合(转)
一 Apache与Tomcat比较联系 apache支持静态页,tomcat支持动态的,比如servlet等. 一般使用apache+tomcat的话,apache只是作为一个转发,对jsp的处理是由 ...
- linux下apache和tomcat整合
一 Apache与Tomcat比较联系 apache支持静态页,tomcat支持动态的,比如servlet等. 一般使用apache+tomcat的话,apache只是作为一个转发,对jsp的处理是由 ...
- Apache与tomcat
联系 1)Apache和tomcat都是web网络服务器 2)Apache是普通的服务器,本身支持html即普通网页,可以通过插件支持php也可以与Tomcat连通 (Apache单向连接tomca ...
随机推荐
- 【JAVA编码专题】UNICODE,GBK,UTF-8区别 分类: B1_JAVA 2015-02-10 21:07 153人阅读 评论(0) 收藏
简单来说,unicode,gbk和大五码就是编码的值,而utf-8,uft-16之类就是这个值的表现形式.而前面那三种编码是一兼容的,同一个汉字,那三个码值是完全不一样的.如"汉"的uncode值与g ...
- stl变易算法(一)
C++ STL的变易算法是一组可以改动容器元素数据的模板函数,可进行序列容器的复制.交换.替换.填充.移除.旋转等.这些算法对迭代器有较高的要求.详细的迭代器类型随各个算法而定,或向前迭代器.或双向迭 ...
- 驱动程序调试方法之printk——printk的原理与直接使用
1.基本原理 (1)在UBOOT里设置console=ttySAC0或者console=tty1 这里是设置控制终端,tySAC0 表示串口, tty1 表示lcd(2)内核用printk打印 内核就 ...
- Html中CSS之去除li前面的小黑点,和ul、LI部分属性方法
对于很多人用div来做网站时,总会用到,但在显示效果时前面总是会有一个小黑点,这个令很多人头痛,但又找不到要源,其它我们可以用以下方法来清除.1.在CSS中写入代码.找到相关性的CSS,在..li和. ...
- js进阶正则表达式15验证身份证号(|符号的使用:var reg=/^\d{17}[\d|X]$|^\d{15}$/)(str的方法substr)
js进阶正则表达式15验证身份证号(|符号的使用:var reg=/^\d{17}[\d|X]$|^\d{15}$/)(str的方法substr) 一.总结 1.|符号的使用:var reg=/^\d ...
- Django + Apache + wsgi配置和环境搭建(ubuntu)
上一篇写了Django + nginx + uwsgi配置和环境搭建(ubuntu) 由于公司服务器环境问题,又配置了apache的环境.记录例如以下: 一. 安装环境: #apache sudo a ...
- [React] Pass Data To Event Handlers with Partial Function Application
In this lesson we’ll see how to pass an item’s id value in an event handler and get the state to ref ...
- java三大框架实现任务调度——IRemindService
java实现任务调度,主要分为几个步骤: 1.创建一个服务 2.创建一个任务类,将服务作为一个任务去完成(实现job接口) 3.创建一个任务类实体 ...
- Android中获取当前位置的使用步骤
在Android中得到当前位置的步骤 1.在AndroidManifest.xml中声明权限 android.permission.ACCESS_FINE_LOCATION(或者android.per ...
- java十五个常用类学习及方法举例
<code class="language-java">import java.util.Scanner; import java.util.Properties; i ...