当前位置: > Linux服务器 > apache >

ubuntu 12.04下apache2+tomcat7用proxy_ajp方式整合步骤

时间:2014-10-23 13:52来源:linux.it.net.cn 作者:it

开始操作前,首先下载需要的安装包。

apache2:http://httpd.apache.org/download.cgi

apr和apr-util:http://apr.apache.org/

tomcat7:http://tomcat.apache.org/download-70.cgi

jdk:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

东西准备好了之后开始编译、安装。

一、编译apr

tar -zxvf apr-1.5.0.tar.gz
cd apr-1.5.0
./configure –prefix=/usr/local/apr-httpd/
make
make install

二、编译apr_util

tar -zxvf apr-util-1.5.3.tar.gz
cd apr-util-1.5.3
./configure –prefix=/usr/local/apr-util-httpd/–with-apr=/usr/local/apr-httpd/
make
make install

三、编译apache2

tar -zxvf httpd-2.2.26.tar.gz
cd httpd-2.2.26
./configure –prefix=/usr/local/apache2/–with-apr=/usr/local/apr-httpd/ –with-apr-util=/usr/local/apr-util-httpd/–enable-so –enable-mods-shared=most –enable-rewrite=shared –enable-proxy=shared –enable-proxy-ajp=shared –enable-proxy-balancer=shared –enable-speling=shared
make
make install

启动apache2服务器

/usr/local/apache2/bin/apachectl start

如果没有报错,而且浏览器打开http://yourip/显示It works!页面,那么说明apache安装成功。

设置apache2开机自动启动,添加服务。

cp -a /usr/local/apache2/bin/apachectl /etc/init.d/
mv /etc/init.d/apachectl /etc/init.d/apache2

编辑/etc/init.d/apache2,在#!/bin/bash下添加如下两行。

# chkconfig: 35 70 30
# description: Apache2

update-rc.d apache2 defaults

四、安装tomcat7

1、安装jdk

tar zxvf jdk-7u55-linux-x64.gz

mkdir -p /usr/lib/jvm/

mv jdk1.7.0_55/ /usr/lib/jvm

设置jdk环境变量

export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_55
export JRE_HOME=/usr/lib/jvm/jdk1.7.0_55/jre
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

最后出现如下页面说明jdk设置完成。

root@ubuntu:/usr/lib/jvm# java -version
java version “1.7.0_55″
Java(TM) SE Runtime Environment (build 1.7.0_55-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.55-b03, mixed mode)

2、安装tomcat

tar zxvf apache-tomcat-7.0.52.tar.gz -C /usr/local/

mv /usr/local/apache-tomcat-7.0.52 /usr/local/tomcat7

在/usr/local/tomcat7/bin/catalina.sh中找到“# OS specific support. $var _must_ be set to either true or false.”,在他的下面添加如下两条信息,保存退出。

CATALINA_HOME=/usr/local/tomcat7
JAVA_HOME=/usr/lib/jvm/jdk1.7.0_55

3、启动tomcat

/usr/local/tomcat7/bin/startup.sh

如果没有报错,而且浏览器打开http://yourip:8080/显示tomcat的默认页面,那么说明tomcat安装成功。

4、设置tomcat7开机启动

新建文件/etc/init.d/tomcat7,添加如下内容。

01 #!/bin/bash
02 #
03 # /etc/rc.d/init.d/tomcat7
04 # init script for tomcat precesses
05 #
06 # processname: tomcat
07 # description: tomcat is a j2se server
08 # chkconfig: 2345 86 16
09 # description: Start up the Tomcat servlet engine.
10  
11 RETVAL=$?
12 CATALINA_HOME="/usr/local/tomcat7"
13  
14 case "$1" in
15 start)
16  if [ -f $CATALINA_HOME/bin/startup.sh ];
17  then
18  echo $"Starting Tomcat"
19  $CATALINA_HOME/bin/startup.sh
20  fi
21  ;;
22 stop)
23  if [ -f $CATALINA_HOME/bin/shutdown.sh ];
24  then
25  echo $"Stopping Tomcat"
26  $CATALINA_HOME/bin/shutdown.sh
27  fi
28  ;;
29 *)
30  echo $"Usage: $0 {start|stop}"
31  exit 1
32  ;;
33 esac
34  
35 exit $RETVAL

保存后授予tomcat7可以执行权限,然后再运行update-rc.d tomcat7 defaults即可。

五、整合tomcat和apache

修改apache的配置文件httpd.conf,添加模块proxy_module 和proxy_ajp_module ,去掉Include conf/extra/httpd-vhosts.conf一行的注释。

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so

……

Include conf/extra/httpd-vhosts.conf

编辑httpd-vhosts.conf文件,我的设置如下,打开http://yourip/images由apache处理,其他都由tomcat处理。

01 NameVirtualHost *:80
02  
03 <VirtualHost *:80>
04  ServerAdmin webmaster@dummy-host.example.com
05  DocumentRoot "/home/www/"
06  ServerName www.domain.com
07  
08 <Directory "/home/www/">
09  Options Indexes FollowSymLinks
10  AllowOverride None
11  Order allow,deny
12  Allow from all
13  </Directory>
14  
15 ProxyPass /images !
16  ProxyPass / ajp://localhost:8009/
17  ProxyPassReverse / ajp://localhost:8009/
18  
19 ErrorLog "/home/wwwlogs/www.domain.com-error_log"
20  CustomLog "/home/wwwlogs/www.domain.com-access_log" common
21 </VirtualHost>

到这里,apache整合tomcat基本上就已经部署完成了。

(责任编辑:IT)
------分隔线----------------------------