Linux下Apache Httpd与Tomcat整合配置

下载安装

Apache Http Server

http://httpd.apache.org/  下载httpd-2.4.20.tar.gz

解压后cd到根目录,运行命令

 
 
  1. ./configure --prefix=PREFIX

PREFIX:指定安装到哪个目录下,一般默认即可,不用指定该命令,默认目录:

/usr/local/apache2.

如果出现缺少ARP的错误则去http://apr.apache.org/download.cgi 下载APR 和 APR-Util

解压到httpd-2.4.20/srclib下(注:APR 和 APR-Util解压后要把版本号去掉)。

然后用以下命令再次运行:

 
 
  1. ./configure --with-included-apr

如果出现缺少PCRE的错误则去https://sourceforge.net/projects/pcre/files/ 下载PCRE

解压后cd到根目录依次运行命令:

 
 
  1. ./configure
  2. make
  3. sudo make install

默认安装到/usr/local/下,然后cd到httpd-2.4.20下运行命令:

 
 
  1. ./configure --with-pcre=/usr/local

最后在根目录依次运行命令:

 
 
  1. make
  2. sudo make install

然后apache 就会安装到/usr/local/apache2,到此完成apache http服务器的安装。


Tomcat

http://tomcat.apache.org/download-70.cgi 下载tomcat7并解压到指定目录,修改目录名为tomcat7。

tomcat直接解压就可以用了,如果你要将其作为系统服务,请移步http://tomcat.apache.org/tomcat-7.0-doc/setup.html#Unix_daemon 


Apache Tomcat Connectors

http://mirrors.cnnic.cn/apache/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.41-src.tar.gz 下载Tomcat Connectors JK 1.2并解压。

cd到根目录下的native目录运行命令:

 
 
  1. ./configure --with-apxs=/usr/local/apache2/bin/apxs
  2.  make

然后会在/tomcat-connectors-1.2.41-src/native/apache-2.0/目录下生成模块mod_jk.so,

将该模块复制到/usr/local/apache2/modules/下:

 
 
  1. sudo cp mod_jk.so /usr/local/apache2/modules


最后将tomcat-connectors-1.2.41-src/conf下的三个配置文件复制到/usr/local/apache2/conf/下,并将其中的httpd-jk.conf改名为mod-jk.conf.


配置

apache

配置环境变量:

 
 
  1. sudo vim /etc/profile
  2. export APACHE_HOME=/usr/local/apache2
  3. export PATH=$PATH:$APACHE_HOME/bin

配置httpd.conf文件, /usr/local/apache2/conf/

 
 
  1. #监听端口
  2. Listen 80
  3. # 主机名
  4. ServerName localhost:80
  5. # 项目发布目录,这个可以改成你自己的
  6. DocumentRoot "/develop/tomcat7/webapps"
  7. <Directory "//develop/tomcat7/webapps">

在httpd.conf最后加上

 
 
  1. # mod_jk.conf
  2. Include conf/mod_jk.conf

配置mod_jk.conf

 
 
  1. # Load mod_jk module
  2. LoadModule    jk_module  modules/mod_jk.so
  3. <IfModule jk_module>
  4. # Add the module (activate this lne for Apache 1.3)
  5. # AddModule     mod_jk.c
  6. # Where to find workers.properties
  7. JkWorkersFile conf/workers.properties
  8. # 对网页的过滤规则
  9. JkMountFile conf/uriworkermap.properties
  10. # Where to put jk shared memory
  11. JkShmFile     logs/mod_jk.shm
  12. # Where to put jk logs
  13. JkLogFile     logs/mod_jk.log
  14. # Set the jk log level [debug/error/info](可选)
  15. JkLogLevel    info
  16. # 声明mod_jk的日志的时间戳格式(可选)
  17. JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
  18. </IfModule>

配置uriworkermap.properties

 
 
  1. #定义tomcat处理的文件类型,tomcat不处理的由apache来处理。
  2. /*=tomcat1 # 所有的请求都由 tomcat1 这个 worker 进行处理  
  3. /jkstatus=jk-status #/jkstatus 请求由 status 这个 worker 处理
  4. !/*.jpg=tomcat1  
  5. !/*.gif=tomcat1  
  6. !/*.png=tomcat1  
  7. !/*.bmp=tomcat1
  8. !/*.html=tomcat1  
  9. !/*.htm=tomcat1  
  10. !/*.swf=tomcat1
  11. !/*.css=tomcat1  
  12. !/*.js=tomcat1

配置workers.properties

  
  
  1. # 为mod_jk模块指明Tomcat的安装路径
  2. workers.tomcat_home=$CATALINA_HOME
  3. # 为mod_jk模块指明JDK的安装路径
  4. workers.java_home=$JAVA_HOME
  5. # 添加一个worker到worker列表
  6. # 注:worker.list中worker的名字应该是对应到Apache Http Server的httpd.conf配置文件中的JkMount的
  7. worker.list=tomcat1
  8. # 为tomcat-list设定各个参数
  9. # 工作端口,Tomcat的默认Connector监听端口,可以查看Tomcat的Server.xml中有port="8009"
  10. worker.tomcat1.port=8009
  11. # Tomcat所在机器,如果安装在与apache不同的机器则需要设置IP
  12. worker.tomcat1.host=localhost
  13. # worker的类型,允许的值为ajp13、ajp14、lb、status等;ajp13是mod_jk连接WebServer和Tomcat的首选方式(即使用socket作为通信渠道)
  14. worker.tomcat1.type=ajp13
  15. # 负载平衡因,表示权重
  16. worker.tomcat1.lbfactor=1
注:可用命令httpd -t 测试配置是否有效。

tomcat

配置环境变量:

 
 
  1. sudo vim /etc/profile
  2. # tomcat
  3. export CATALINA_HOME=~/develop/tomcat7
  4. export PATH=$PATH:$CATALINA_HOME/bin

运行测试

先启动tomcat:

  
  
  1. startup.sh

再启动apache:

  
  
  1. sudo ./apachectl start

在浏览器输入http://localhost/ 若出现

If you're seeing this, you've successfully installed Tomcat. Congratulations!

则表示整合成功!

可以查看日志/usr/local/apache2/logs/access_log:


和jk模块的日志,/usr/local/apache2/logs/mod_jk.log


到此整合工作完成,现在apache负责服务器静态内容而tomcat负责服务器的动态内容。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值