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

2024-02-05 11:18

本文主要是介绍ubuntu 12.04下apache2+tomcat7用proxy_ajp方式整合步骤,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

查看原文:http://www.sijitao.net/1702.html
开始操作前,首先下载需要的安装包。

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,添加如下内容。

[code language="shell"]

#!/bin/bash
#
# /etc/rc.d/init.d/tomcat7
# init script for tomcat precesses
#
# processname: tomcat
# description: tomcat is a j2se server
# chkconfig: 2345 86 16
# description: Start up the Tomcat servlet engine.

RETVAL=$?
CATALINA_HOME="/usr/local/tomcat7"

case "$1" in
start)
if [ -f $CATALINA_HOME/bin/startup.sh ];
then
echo $"Starting Tomcat"
$CATALINA_HOME/bin/startup.sh
fi
;;
stop)
if [ -f $CATALINA_HOME/bin/shutdown.sh ];
then
echo $"Stopping Tomcat"
$CATALINA_HOME/bin/shutdown.sh
fi
;;
*)
echo $"Usage: $0 {start|stop}"
exit 1
;;
esac

exit $RETVAL

[/code]

保存后授予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处理。

[code language="shell"]

NameVirtualHost *:80

<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "/home/www/"
ServerName www.domain.com

<Directory "/home/www/">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>

ProxyPass /images !
ProxyPass / ajp://localhost:8009/
ProxyPassReverse / ajp://localhost:8009/

ErrorLog "/home/wwwlogs/www.domain.com-error_log"
CustomLog "/home/wwwlogs/www.domain.com-access_log" common
</VirtualHost>

[/code]

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

这篇关于ubuntu 12.04下apache2+tomcat7用proxy_ajp方式整合步骤的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/680735

相关文章

gradle第三方Jar包依赖统一管理方式

《gradle第三方Jar包依赖统一管理方式》:本文主要介绍gradle第三方Jar包依赖统一管理方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录背景实现1.顶层模块build.gradle添加依赖管理插件2.顶层模块build.gradle添加所有管理依赖包

Linux之systemV共享内存方式

《Linux之systemV共享内存方式》:本文主要介绍Linux之systemV共享内存方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、工作原理二、系统调用接口1、申请共享内存(一)key的获取(二)共享内存的申请2、将共享内存段连接到进程地址空间3、将

Maven中引入 springboot 相关依赖的方式(最新推荐)

《Maven中引入springboot相关依赖的方式(最新推荐)》:本文主要介绍Maven中引入springboot相关依赖的方式(最新推荐),本文给大家介绍的非常详细,对大家的学习或工作具有... 目录Maven中引入 springboot 相关依赖的方式1. 不使用版本管理(不推荐)2、使用版本管理(推

SpringBoot整合OpenFeign的完整指南

《SpringBoot整合OpenFeign的完整指南》OpenFeign是由Netflix开发的一个声明式Web服务客户端,它使得编写HTTP客户端变得更加简单,本文为大家介绍了SpringBoot... 目录什么是OpenFeign环境准备创建 Spring Boot 项目添加依赖启用 OpenFeig

C#使用StackExchange.Redis实现分布式锁的两种方式介绍

《C#使用StackExchange.Redis实现分布式锁的两种方式介绍》分布式锁在集群的架构中发挥着重要的作用,:本文主要介绍C#使用StackExchange.Redis实现分布式锁的... 目录自定义分布式锁获取锁释放锁自动续期StackExchange.Redis分布式锁获取锁释放锁自动续期分布式

SpringBoot整合mybatisPlus实现批量插入并获取ID详解

《SpringBoot整合mybatisPlus实现批量插入并获取ID详解》这篇文章主要为大家详细介绍了SpringBoot如何整合mybatisPlus实现批量插入并获取ID,文中的示例代码讲解详细... 目录【1】saveBATch(一万条数据总耗时:2478ms)【2】集合方式foreach(一万条数

IntelliJ IDEA 中配置 Spring MVC 环境的详细步骤及问题解决

《IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决》:本文主要介绍IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决,本文分步骤结合实例给大... 目录步骤 1:创建 Maven Web 项目步骤 2:添加 Spring MVC 依赖1、保存后执行2、将新的依赖

Java对象转换的实现方式汇总

《Java对象转换的实现方式汇总》:本文主要介绍Java对象转换的多种实现方式,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Java对象转换的多种实现方式1. 手动映射(Manual Mapping)2. Builder模式3. 工具类辅助映

Spring Boot 整合 SSE的高级实践(Server-Sent Events)

《SpringBoot整合SSE的高级实践(Server-SentEvents)》SSE(Server-SentEvents)是一种基于HTTP协议的单向通信机制,允许服务器向浏览器持续发送实... 目录1、简述2、Spring Boot 中的SSE实现2.1 添加依赖2.2 实现后端接口2.3 配置超时时

Spring Boot读取配置文件的五种方式小结

《SpringBoot读取配置文件的五种方式小结》SpringBoot提供了灵活多样的方式来读取配置文件,这篇文章为大家介绍了5种常见的读取方式,文中的示例代码简洁易懂,大家可以根据自己的需要进... 目录1. 配置文件位置与加载顺序2. 读取配置文件的方式汇总方式一:使用 @Value 注解读取配置方式二