文档章节

apache整合tomcat(一)

ganlm
 ganlm
发布于 2014/07/23 16:07
字数 805
阅读 38
收藏 0

win8系统下的Apache整合Tomcat
1 安装apache 版本:apache_2.2.14-win32-x86-no_ssl
2 安装tomcat 版本:apache-tomcat-7.0.54-windows-i64.zip


配置tomcat

默认情况下,Tomcat在server.xml中配置了两种连接器:

第一个连接器监听8080端口,负责建立HTTP连接。在通过浏览器访问Tomcat服务器的Web应用时,使用的就是这个连接器。

第二个连接器监听8009端口,负责和其他的HTTP服务器建立连接。在把Tomcat与其他HTTP服务器集成时,就需要用到这个连接器。

两种端口可以同时开,也可以开一个。例如我们使用apache通过ajp进行负载均衡配置时,可以关掉tomcat的http8080端口以防止可以被单独访问。

参考资料 http://limingnihao.iteye.com/blog/1934548

配置apache
1 负载平衡支持
httpd.conf中找到下列几行 并解开
LoadModule proxy_module modules/mod_proxy.so  
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so    
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so   
LoadModule proxy_http_module modules/mod_proxy_http.so   
LoadModule proxy_connect_module modules/mod_proxy_connect.so  
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so  


2 多站点配置
httpd.conf 中找到
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
#Include conf/extra/httpd-vhosts.conf
两行 解开 目的是让Apache在启动时能加载虚拟主机模块
参考资料 http://www.gn00.com/thread-213269-1-1.html


3 MOD_JK
        Tomcat提供了专门的JK插件来负责Tomcat和HTTP服务器的通信。应该把JK插件安置在对方的HTTP服务器上。当HTTP服务器接收到客户请求时,它会通过JK插件来过滤URL,JK插件根据预先配置好的URL映射信息,决定

是否要把客户请求转发给Tomcat服务器处理。例如预先配置好所有"/*.jsp"形式的URL都由Tomcat服务器来处理
        Tomcat提供了不同的JK插件的实现模块。常用的JK插件有:
        与Apache HTTPD服务器集成:mod_jk.so
        与Windows IIS服务器集成:isapi_redirect.dll
4 Workers.properties
 Workers实际上属于Tomcat的链接器(Connector),代表了一个Tomcat实例
配置项
worker.list=seo
worker.maintain=60

# ======================seo=======================
worker.seo1.port=8009
worker.seo1.host=127.0.0.1
worker.seo1.type=ajp13
worker.seo1.socket_timeout=0
worker.seo1.socket_keepalive=true
worker.seo1.lbfactor=1

worker.seo.type=lb
worker.seo.balance_workers=seo1
#=================================================

5 mod_jk.conf
    # a versioned file name.  
    LoadModule jk_module modules/mod_jk_2.2_32.so  
    <IfModule jk_module>  
        JkWorkersFile conf/workers.properties  
        JkLogFile logs/mod_jk.log  
        JkLogLevel info  
        JkShmFile logs/mod_jk.shm  
        # JkOptions +RejectUnsafeURI  
        # JkStripSession On  
        JkWatchdogInterval 60  
        <Location /jk-status>  
            # Inside Location we can omit the URL in JkMount  
            JkMount jk-status  
            Order deny,allow  
            Deny from all  
            Allow from 127.0.0.1  
        </Location>  
        <Location /jk-manager>  
            # Inside Location we can omit the URL in JkMount  
            JkMount jk-manager  
            Order deny,allow  
            Deny from all  
            Allow from 127.0.0.1  
        </Location>  
        JkMountFile conf/uriworkermap.properties  
    JkMount /* balancer  
        # JkUnMount /myapp/static/* *  
        # JkUnMount /myapp/images/* balancer  
        # SetEnvIf REQUEST_URI "\.(htm|html|css|gif|jpg|js)$" no-jk  
        # SetEnvIf Request_URI "/transactions/" JK_REPLY_TIMEOUT=600000  
        # SetEnvIf Request_URI "/reports/" JK_REPLY_TIMEOUT=0  
    </IfModule>  

6 目录文件访问
<Directory "/home/ums.com/application/">
   Options FollowSymLinks MultiViews
   AllowOverride None
   Order allow,deny
   Allow from all
</Directory>

7 访问控制

# All requests go to Tomcat by default

JkMount   /app    app

#不通过tomcat

# Serve html, jpg and gif etc using Apache
#JkUnMount /app/*.css app


配置中遇到的问题:

1 安装apache后 缺少mod_jk.so 文件 从其他地方下载了一个

2 目录文件访问我设置为可以目录访问,导致jsp 文件在浏览器中以源码显示

3 使用http 访问8080       正常访问,添加apache 后 以80端口 访问失败,原因是 worker.seo1.port=8009 此处应该配置ajp 的端口8009

© 著作权归作者所有

共有 人打赏支持
ganlm
粉丝 0
博文 5
码字总数 2402
作品 0
海淀
高级程序员
Apache与Tomcat的整合配置方式

本文内容转载整理自《Apache HTTP Server 与 Tomcat 的三种连接方式介绍》(http://www.ibm.com/developerworks/cn/opensource/os-lo-apache-tomcat/) Apache与Tomcat整合的优势有以下几点:...

Neron.L
2012/01/17
0
0
1、apache与tomcat的整合

简介: apache作为主流的web服务软件之一,可以作为独立的web服务器来运行,但是只能支持静态网页,对于动态网页(asp,jsp,php,cgi等)的处理则显得无能为力。tomcat也可以作为独立的web服务器...

CARYFLASH
2017/12/14
0
0
Apache+tomcat的整合

为什么要做这个整合呢?当然,首先想到是就是Apache和Tomcat的区别。正因为有区别,有各自的优缺点才需要整合,取二者所长,弃二者所短。 Apache和Tomcat都可以在他们的官网下载: http://ww...

imzdx
2015/08/22
0
0
Apache与Tomcat 区别联系

Apache 和 Tomcat 都是web网络服务器,两者既有联系又有区别,在进行HTML、PHP、JSP、Perl等开发过程中,需要准确掌握其各自特点,选择最佳的服务器配置。 apache是web服务器(静态解析,如H...

长平狐
2013/01/06
60
0
Apache 和 Tomcat 整合的好处和意义

Apache是一个web服务器环境程序,可以作为web服务器使用。不过只支持静态网页,如(asp,php,cgi,jsp)等动态网页的就显得无能为力。 如果要在Apache环境下运行jsp 的话就需要一个解释器来执行j...

凡尘里的一根葱
2015/09/30
358
1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

OSChina 周三乱弹 —— 公司女同事约我

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @莱布妮子:分享水木年华的单曲《蝴蝶花(2002年大提琴版)》 《蝴蝶花(2002年大提琴版)》- 水木年华 手机党少年们想听歌,请使劲儿戳(这里) ...

小小编辑
7分钟前
12
4
Linux环境搭建 | VMware下共享文件夹的实现

在进行程序开发的过程中,我们经常要在主机与虚拟机之间传递文件,比如说,源代码位于虚拟机,而在主机下阅读或修改源代码,这里就需要使用到 「共享文件」 这个机制了。本文介绍了两种共享文...

良许Linux
今天
5
0
JUC锁框架——AQS源码分析

JUC锁介绍 Java的并发框架JUC(java.util.concurrent)中锁是最重要的一个工具。因为锁,才能实现正确的并发访问。而AbstractQueuedSynchronizer(AQS)是一个用来构建锁和同步器的框架,使用A...

长头发-dawn
今天
3
0
docker中安装了RabbitMQ后无法访问其Web管理页面

在官网找了"$ docker run -d --hostname my-rabbit --name some-rabbit -p 8080:15672 rabbitmq:3-management"这条安装命令,在docker上安装了RabbitMQ,,结果输入http://localhost:8080并不......

钟然千落
今天
4
1
spring-cloud | 分布式session共享

写在前面的话 各位小伙伴,你们有福了,这一节不仅教大家怎么实现分布式session的问题,还用kotlin开发,喜欢kotlin的小伙伴是不是很开心! 以前在写Android的时候,就对客户端请求有一定的认...

冯文议
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部