·ChinaUnix首页 ·论坛 ·博客 
Linux首页 | Linux新闻 | Linux论坛 | Linux文档 | Linux下载 | Linux博客 | Linux搜索 | 开源项目孵化平台
新手入门 | 安装启动 | 管理员指南 | 开发手册 | 桌面应用 | 程序开发 | 数据库 | 网络技术| CentOS | Fedora | MySQL | Apache | Ubuntu | Gentoo| OSCON08
  Linux时代 >> 技术文档 >> 网络技术
 
RedHat linux AS 4 + Apache2.2 + Tomcat5.5.12 + MY
来源: ChinaUnix博客  日期: 2007.04.06 10:21 (共有条评论) 我要评论
 
今天偶然在网上发现apache-2.2.0增加了一个proxy-ajp模块,看了看它可以完全代替原来的mod-jk把tomcat和apache结合到一起。于是我就下载下来试了一下真的很方便比原来的方法简单多了。下面就说明一下我的安装步骤。
安装jdk
#chmod 744 jdk-1_5_0_02-linux-i586.bin
# ./ jdk-1_5_0_02-linux-i586.bin
生成目录:jdk1.5.0_02
将该文件移动到/usr/local/java 目录下
mv jdk1.5.0_02 /usr/local/java
测试java环境是否建立:
#cd  /usr/local/java
# ls
bin     demo     jre  LICENSE  README.html  src.zip
COPYRIGHT  include  lib  man   sample       THIRDPARTYLICENSEREADME.txt
# bin/java –version
java version "1.5.0_02"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_02-b09)
Java HotSpot(TM) Client VM (build 1.5.0_02-b09, mixed mode, sharing)
显示版本,说明java环境建立成功!
(注意:tomcat5.5的必须有jdk1.5这个版本支持)
安装tomcat
[root@leo src]# tar zxvf apache-tomcat-5.5.12.tar.gz
[root@leo src]# mv apache-tomcat-5.5.12 /usr/local/tomcat
启动关闭服务文件放在  /usr/local/tomcat/bin
  配置文件               /usr/local/tomcat/conf
  web文件               /usr/local/tomcat/webapps
  默认访问目录         /usr/local/tomcat/webapps/ROOT
                    
设置环境变量,
在/etc/profile中末尾加入:
export JAVA_HOME=/usr/local/java
export TOMCAT_HOME=/usr/local/tomcat
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
source /etc/profile(使之生效就可以了)
3.启动与关闭服务:
#cd /usr/local/tomcat/bin
#./startup.sh   (关闭服务:#./shutdown.sh)
测试:
http://192.168.1.155:8080/
(注:/usr/local/tomcat/webapps/ROOT目录下面必须有WEB-INF这个目录,否则将无法访问该页面。
安装apache
首先从
http://www.apache.org
的网站上下载apache-2.2.0的源代码。apache-2.2.0的版本做了些改动大家需要注意一下。首先apr和apr-util需要单独的安
装,还有配置文件由原来的一个变为现在的多个不过这样也好,可以清楚的知道那部分配置在那个配置文件里方便修改。安装步骤如下:
[url=file:///root/Desktop/%E9%9B%86%E7%BE%A4%E6%8A%80%E6%9C%AF%E6%96%87%E6%A1%A3/%E9%82%A3%E5%A4%A9%E6%97%A5%E8%AE%B0/LAMP.html#] more.. [/url]
[url=file:///root/Desktop/%E9%9B%86%E7%BE%A4%E6%8A%80%E6%9C%AF%E6%96%87%E6%A1%A3/%E9%82%A3%E5%A4%A9%E6%97%A5%E8%AE%B0/LAMP.html#] less.. [/url]
解压apache的源代码
# tar xvjf httpd-2.2.0.tar.bz2
# cd httpd-2.2.0
安装apr
# cd srclib/apr
# ./configure --prefix=/usr/local/apr
# make
# make install
安装apr-util
# cd ../apr-util/
# ./configure --prefix=/usr/local/apr-util \
> --with-apr=/usr/local/apr
# make
# make install
# cd ../../
安装apache
# ./configure --prefix=/usr/local/apache \
> --enable-so \
> --enable-rewrite=share \
> --enable-proxy=share \
> --enable-proxy-ajp=share \
> --with-apr=/usr/local/apr \
> --with-apr-util=/usr/local/apr-util
# make
# make install
#/usr/local/apache/bin/httpd -l //看看是否有proxy-ajp这个模块
如果有这个模块证明proxy-ajp模块安装成功,可以进行与tomcat的结合了。
# vi /usr/local/apache/conf/httpd.conf
把"#Include conf/extra/httpd-vhosts.conf" 前面的"#"去掉然后编辑
Vi  /usr/local/apache/conf/extra/httpd-vhosts.conf
编辑为如下的代码
  ServerAdmin
lzqboy12@21cn.com
  ProxyPass / ajp://localhost:8009/
  ProxyPassReverse / ajp://localhost:8009/
  ServerName localhost
  ServerAlias
www.leo.com
  ErrorLog logs/leo.com-error_log
  CustomLog logs/leo.com-access_log common
然后先启动tomcat,再启动apache
# /usr/local/tomcat/bin/startup.sh
# /usr/local/apache/bin/apachctl start
http://192.168.1.155

http://www.leo.com
打开浏览器看看是否看到了tomcat的欢迎页面,如果是说明apache和tomcat的结合成功

意:由于/的设置把所有80端口的访问都forward到了tomcat,所以这可能不是我们所希望的,这种情况下apache只是个转发代理。一般情况
下,我们希望apache同时能提供mod_perl、php功能。因此需要单独为jsp的应用配置URI映射。 配置同样很简单ProxyPass
/myapp ajp://localhost:8009/,ProxyPassReverse /myapp
ajp://localhost:8009/即可。
方法二:
下面介绍一下加载mod_jk.so模块来解释JSP:
安装jakarta-tomcat-connectors-1.2.15-src,生成mod_jk.so文件。
安装jakarta-tomcat-connectors-1.2.15-src.tar.gz
具体过程如下:
#tar zxvf jakarta-tomcat-connectors-1.2.15-src.tar.gz
# cd jakarta-tomcat-connectors-1.2.15-src
# cd jk
# cd native
#./configure --with-apxs=/usr/local/apache/bin/apxs
#make
#make  install
# ls /usr/local/apache/modules/
mod_jk.so
(mod_jk.so会自动被复制到 /usr/local/apache/modules目录下)
整合apache与tomcat(具体参考apache的官方网站)
编辑apache的配置文件/usr/local/apache/conf/httpd.conf,在文件末尾添加如下内容:
#ad mod_jk module
LoadModule jk_module modules/mod_jk.so
# Update this path to match your modules location
# Where to find workers.properties
# Update this path to match your conf directory location (put workers.properties next to httpd.conf)
JkWorkersFile /usr/local/apache/conf/workers.properties
# Where to put jk logs
# Update this path to match your logs directory location (put mod_jk.log next to access_log)
  JkLogFile     /usr/local/apache/mod_jk.log
# Set the jk log level [debug/error/info]
  JkLogLevel     info
# Select the log format
  JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
# JkOptions indicate to send SSL KEY SIZE,
  JkOptions     +ForwardKeySize +ForwardURICompat -ForwardDirectories
# JkRequestLogFormat set the request format
  JkRequestLogFormat     "%w %V %T"
# Send everything for context /examples to worker named worker1 (ajp13)
  JkMount  /*.jsp worker1
新建此文件/usr/local/apache/conf/workers.properties 添加如下内容:
# Define 1 real worker using ajp13
  worker.list=worker1
  # Set properties for worker1 (ajp13)
  worker.worker1.type=ajp13
  worker.worker1.host=localhost
  worker.worker1.port=8009
  worker.worker1.lbfactor=50
  worker.worker1.cachesize=10
  worker.worker1.cache_timeout=600
  worker.worker1.socket_keepalive=1
  worker.worker1.reclycle_timeout=300
重启apache即可生效.
安装MYSQL
# groupadd mysql
# useradd -g mysql -d /usr/local/mysql/data -M mysql
# tar -zxvf mysql-5.0.17.tar.gz
# cd mysql-5.0.17
./configure --prefix=/usr/local/mysql \             指定安装目录
> --sysconfdir=/etc \                               配置文件的路径
> --localstatedir=/usr/local/mysql/data \           数据库存放的路径
> --enable-assembler \                               使用一些字符函数的汇编版本
> --with-mysqld-ldflags=-all-static \               以纯静态方式编译服务端
> --with-charset=utf8 \                             添加utf8字符支持
> --with-extra-charsets=all                         添加所有字符支持
# make
# make install
# /usr/local/mysql/bin/mysql_install_db
# chown -R mysql:mysql /usr/local/mysql/data
# cp /usr/local/mysql/share/mysql/mysql.server /etc/rc.d/init.d/mysqld
#  chkconfig --add mysqld
# cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf
先安装支持包(注意安装顺序)
先列出配置各种所需要包的网址:
Apache
http://httpd.apache.org
PHP
http://www.php.net

PDF
http://www.pdflib.com

MYSQL
http://www.mysql.com

LDAP
http://www.openldap.org

IMAP
ftp://ftp.cac.washington.edu/

GD
http://www.boutell.com/gd/
Zlib
http://www.gzip.org/zlib/

Bzip2
http://sources.redhat.com/bzip2/

Libmcrypt  
http://mcrypt.hellug.gr/

LibPNG
ftp://ftp.uu.net/graphics/png
1.2.0
FreeType
http://www.freetype.org/index2.html
2.0.6
Jpeg
ftp://ftp.uu.net/graphics/jpeg/
v6b
LibTiff
http://www.libtiff.org/
3.5.7
MM lib
http://www.engelschall.com/sw/mm/
1.1.3
建立初始目录:
mkdir /usr/local/modules
JPEG目录
mkdir /usr/local/modules/jpeg6
mkdir /usr/local/modules/jpeg6/bin
mkdir /usr/local/modules/jpeg6/lib
mkdir /usr/local/modules/jpeg6/include
mkdir /usr/local/modules/jpeg6/man
mkdir /usr/local/modules/jpeg6/man/man1
安装openldap
#tar zxvf openldap-2.3.9.tgz
#cd openldap-2.3.9
#./configure --prefix=/usr/local/openldap \
> --exec-prefix=/usr/local/openldap
#make
#make install
安装imap:
tar -zxvf imap-2001a.tar.Z
cd imap-2001a  
make  slx  
cp  ipopd/ipop*.*  /usr/sbin  
cp  imapd/imapd  /usr/sbin  
cp c-client/c-client.a /usr/local/lib/libc-client.a  
请确定你有  /usr/local/include  这个目录
cp  c-client/rfc822.h  /usr/local/include  
cp  c-client/mail.h  /usr/local/include  
cp  c-client/linkage.h  /usr/local/include  
安装libmcrypt
tar zxvf libmcrypt-2.5.7.tar.gz
cd libmcrypt-2.5.7
./configure --prefix=/usr/local/libmcrypt
make
make install
安装libxml
# tar -zxvf libxml2-2.6.16.tar.gz
# cd libxml2-2.6.16
# ./configure (xml默认安装就可以,不要指定路径了,因为安装时php可能找不到它,PHP5只支持libxml2-2.5.10以上版本)
# make
# make install
安装zlib
tar xzvf zlib-1.2.2.tar.gz
cd zlib-1.2.2
#不要用--prefix自定义安装目录,影响gd的安装
./configure
make
make install
安装freetype
tar xzvf freetype-2.1.5.tar.gz
cd freetype-2.1.5
./configure --prefix=/usr/local/modules/freetype
make
make install
安装libpng
tar xzvf libpng-1.2.5.tar.gz
#不要用--prefix自定义安装目录,影响gd的安装
cd libpng-1.2.5
cp scripts/makefile.std makefile
make
make install
安装jpeg
tar xzvf jpegsrc.v6b.tar.gz
cd jpeg-6b
./configure --prefix=/usr/local/modules/jpeg6 --enable-shared --enable-static
make
make install
安装TIFF
tar zxvf tiff-3.7.0.tar.gz
cd tiff-3.7.0
./configure --prefix=/usr/local/tiff \
--with-jpeg-include-dir=/usr/local/modules/jpeg6/include \
--with-jpeg-lib-dir=/usr/local/modules/jpeg6/lib
make
make install
安装GD
tar xzvf gd-2.0.33.tar.gz
cd gd-2.0.33
./configure --prefix=/usr/local/modules/gd
--with-jpeg=/usr/local/modules/jpeg6 --with-png --with-zlib
--with-freetype=/usr/local/modules/freetype
make
make install
安装PDFLIB
tar xvf PDFlib-Lite-6.0.2.tar.gz
cd PDFlib-Lite-6.0.2
./configure --prefix=/usr/local/pdflib
make
make install
安装MM
tar zxvf mm-1.4.0.tar.gz
cd mm-1.4.0
./configure --prefix=/usr/local/mm
make
make install
安装Bzip2
tar zxvf bzip2-1.0.3.tar.gz
cd bzip2-1.0.3
vi Makefile
将PREFIX=/usr 改成 PREFIX=/usr/local/bzip2
mkdir /usr/local/bzip2
mkdir /usr/local/bzip2/bin
make
make install
安装CURL
tar zxvf curl-7.15.1.tar.gz
cd curl-7.15.1
./configure --prefix=/usr/local/curl
make
make install
安装Aspell
tar zxvf aspell-0.60.4.tar.gz
cd aspell-0.60.4
./configure --prefix=/usr/local/aspell
make
make install
安装PHP5
mkdir /usr/local/php5
tar -zxvf php-5.1.1.tar.gz
cd php-5.1.1
./configure --prefix=/usr/local/php5 \
    --enable-ftp \
              --with-mysql=/usr/local/mysql \
              --with-mysqli=/usr/local/mysql/bin/mysql_config \
              --with-apxs2=/usr/local/apache/bin/apxs \
          --with-libxml-dir=/usr/local/lib \
          --with-gd=/usr/local/modules/gd \
              --with-jpeg-dir=/usr/local/modules/jpeg6 \
          --with-zlib \
              --with-png \
              --with-freetype-dir=/usr/local/modules/freetype \
              --with-imap=/usr/local/lib \
    --with-ldap=/usr/local/openldap \
    --with-mcrypt=/usr/local/libmcrypt \
    --with-tiff-dir=/usr/local/tiff \
    --with-pdflib=/usr/local/pdflib \
    --with-mm=/usr/local/mm \
    --with-bz2=/usr/local/bzip2 \
    --with-curl=/usr/local/curl \
    --with-pspell=/usr/local/aspell \
              --with-xmlrpc \
              --with-config-file-path=/usr/local/php5/etc
make
make install
cp ./php.ini-dist /usr/local/php5/etc/php.ini
修改httpd.conf
#vi /usr/local/apache/conf/httpd.conf
加载php模块,去掉注释“#”,如没有此行,请加上。
LoadModule php5_module         modules/libphp5.so
加上此两行
AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php-source .phps
到这里全部的安装过程已完成。
以下介绍一下用TOMCAT配置JSP的虚拟主机:
本文介绍的是共享的 IP 模式,这种模式就是所有的虚拟主机都使用同一 IP 。目前国内 IDC 提供的虚拟主机都是这种模式。这种模式的优点是节约数量有限的 IP 。
配置
www.leo.com
虚拟主机
打开 /usr/local/tomcat/conf/server.xml 文件,将 Host 元素之间的内容全部删掉,然后把下面内容加如到 Host 元素 原来的位置。


        
先重启Tomcat,再重启Apache.即可访问
www.leo.com
.
来自漫步云端
               
               
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/21041/showart_271959.html
  发表评论 查看评论(共有条评论) 我要提问
 
 


最新资讯更多>> 
· 专注于服务器操作系统的FreeBS..
· Mono 这只猴子招惹了谁?
· 分布式版本控制 Mercurial 1.3..
· 国内Firefox众生相
· CIH作者也是Linux热心者
· Ubuntu认为没有理由从默认安装..
· Linux内核新补丁发布:巧妙规避..
· Linux基金会:中国贡献代码少没..
· CU《开源时代》第十期(2009.0..
· 浅析龙芯的自由软件战略
论坛热点更多>> 
· 一个前同事:昨日(09,6,26)面..
· 简单的问题,请高手看下
· 请高人推荐一个Linux下的SSH..
· linux清空文件夹命令有吗
· 再见,Linux计算机!
· 大家推荐几个学习linux的论坛
· linux server 5 突然down机..
· redhat 5 企业版DNS配置问题
· 如何复制CDROM里的文件?
· x40换了ssd硬盘,好久没这么爽了
文档更新更多>> 
· GRUB故障修复 虚拟机fedora8
· Ubuntu 9.10 将采用 GRUB 2
· Surfraw: 在命令行下执行 WWW 搜索
· Linux将成首款支持USB3.0的操作系统
· RPM命令的常用参数
· phpMyAdmin下载、安装和使用入门
· uggs boots shop
· 虚拟文件系统:PROC
· Linux下解决三级域名不能访问的问题
· Windows 7 Vs. Linux——操作系统..
 
关于我们 | 联系方式 | 广告合作 | 诚聘英才 | 网站地图 | 友情链接 | 免费注册

Copyright © 2001-2008 ChinaUnix.net All Rights Reserved

感谢所有关心和支持过ChinaUnix的朋友们

京ICP证041476号