免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2279 | 回复: 3

发一篇自己整理的Apache+Tomcat整合文档 [复制链接]

论坛徽章:
0
发表于 2012-02-28 14:36 |显示全部楼层
背景:由于需要JSP环境,这里就写一篇关于Apache+Tomcat整合的文章。

所需软件:
1、httpd-2.2.22.tar.gz
2、tomcat-7.0.23.tar.gz
3、tomcat-connectors-1.2.30.tar.gz
4、jdk-6U21-i586.bin

安装步骤:
1、首先安装Apache

  1. [root@localhost ~]#tar zxvf httpd-2.2.22.tar.gz
  2. [root@localhost ~]#cd httpd-2.2.22
  3. [root@localhost httpd-2.2.22]#./configure --prefix=/usr/local/apache-2.2.22 \
  4. --enable-headers \
  5. --enable-mime-magic \
  6. --enable-proxy \
  7. --enable-so \
  8. --enable-rewrite \
  9. --enable-ssl \
  10. --enable-suexec \
  11. --with-included-apr \
  12. --with-mpm=prefork \
  13. --with-ssl=/usr \
  14. --disable-userdir \
  15. --disable-cgid \
  16. --disable-cgi
  17. [root@localhost httpd-2.2.22]#make && make install
  18. [root@localhost httpd-2.2.22]#cd ../
  19. [root@localhost ~]#
复制代码
2、安装apache-tomcat

  1. [root@localhost ~]#tar zxvf apache-tomcat-7.0.23.tar.gz
  2. [root@localhost ~]#mv apache-7.0.23 /usr/local/
  3. [root@localhost ~]#ln -s /usr/local/tomcat-7.0.23 /usr/local/tomcat
复制代码
3、安装JDK

  1. [root@localhost ~]#chmod +x ./jdk-6U21-i586.bin
  2. [root@localhost ~]#./jdk-6U21-i586.bin
  3. Uppacking....
  4. ....
  5. ...
  6. [root@localhost ~]#mv jdk1.6.0_21 /usr/local/
  7. [root@localhost ~]#ln -s /usr/local/jdk1.6.0_21 /usr/local/jdk
复制代码
4、修改环境变量(/etc/profile)

  1. TOMCAT_HOME=/usr/local/tomcat
  2. JAVA_HOME=/usr/local/jdk
  3. JRE_HOME=$JAVA_HOME/jre
  4. CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
  5. PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
  6. export TOMCAT_HOME JAVA_HOME JRE_HOME CLASSPATH PATH
复制代码
使环境变量立即生效
  1. [root@localhost ~]#source /etc/profile
复制代码
5、安装tomcat-connector

  1. [root@localhost ~]#tar zxvf tomcat-connector-1.2.30.tar.gz
  2. [root@localhost ~]#cd tomcat-connector-1.2.30/
  3. [root@localhost tomcat-connector-1.2.30]#cd native
  4. [root@localhost native]#./buildconf.sh
  5. [root@localhost native]#./configure --with-apxs=/usr/local/apache-2.2.22/bin/apxs
  6. [root@localhost native]#make && make install
  7. [root@localhost native]#cd ../
  8. [root@localhost ~]#
复制代码
6、检查apache安装目录下modules目录有没有mod_jk.so,如果没有手动拷贝。
7、整合Apache+Tomcat
      关于整合,这里有两种方法供推荐,一种是反向代理,一种是基于mod_jk的。既然我们这里安装了mod_jk,反向代理就不多说了,在文章的最后会提一下关于反向代理的方法。这里说的是mod_jk来进行apache+tomcat整合。
    找到apache的安装目录下的conf/extra目录(为了方便,配置文件统一放在这个目录下)
    新建一个mod_jk.conf的配置文件,输入以下内容。

  1. JkWorkersFile        conf/extra/workers.properties
  2. JkLogFile        logs/mod_jk.log
  3. JkShmFile        logs/jk-runtime-status
  4. JkLogLevel info
  5. JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
  6. JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
  7. JkRequestLogFormat "%w %V %T"

  8. #Sample JkMounts.   Replace these with the paths you would
  9. #like to mount from your JSP server.
  10. #syntax: JkMount ${URL_DIR}/*.jsp worker_name

  11. JkMount                /images/avatar/*        worker1
  12. JkMount                /*.jsp                        worker1
  13. JkMount                /*.page                        worker1
  14. JkMount                /*.cic                        worker1
  15. JkMount                /*.do                        worker1
  16. JkMount                /*.action                        worker1
复制代码
保存后再新建一个workers.properties文件,输入以下内容:

  1. worker.list=worker1     
  2. worker.worker1.port=8009
  3. worker.worker1.host=localhost
  4. worker.worker1.type=ajp13
  5. worker.woker1.lbfactor=1
复制代码
最后修改apache的httpd.conf文件的DocumentRoot跟tomcat保持一致,在DirectoryIndex选项添加index.jsp,index.do index.action,重启apache服务。
写一个index.jsp的测试页面:

  1. <%
  2.     out.println("hello java");
  3. %>
复制代码
访问验证成功


这里再说一下关于反向代理来进行apache+tomcat的整合,既然是反向代理,那tomcat-connectors就不用装了,配置文件也无需更改,只需装好apache、tomcat、jdk,开启各自服务后,修改httpd.conf,在文件最后加入如下语句:

  1. <Proxy balancer://localCluster>
  2.          BalancerMember ajp://localhost:8009
  3. </Proxy>
  4. RewriteEngine On
  5. ProxyPreserveHost On
  6. RewriteRule ^/$ balancer://localCluster/ [P,L,NC]
  7. RewriteRule ^/(.*)$ balancer://localCluster/$1 [P,L,NC]
复制代码

论坛徽章:
0
发表于 2012-03-03 18:29 |显示全部楼层

论坛徽章:
0
发表于 2012-03-27 20:30 |显示全部楼层
很好。收藏了,以后帮别人搭环境的时候可能用得着。哈哈。

论坛徽章:
0
发表于 2012-03-30 16:53 |显示全部楼层
这个需要,收下
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

DTCC2020中国数据库技术大会

【架构革新 高效可控】2020年12月21日-23日第十一届中国数据库技术大会将在北京隆重召开。

大会设置2大主会场,20+技术专场,将邀请超百位行业专家,重点围绕数据架构、AI与大数据、传统企业数据库实践和国产开源数据库等内容展开分享和探讨,为广大数据领域从业人士提供一场年度盛会和交流平台。

http://dtcc.it168.com


大会官网>>
  

北京盛拓优讯信息技术有限公司. 版权所有 16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122
中国互联网协会会员  联系我们:huangweiwei@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP