Apache ,Tomcat ,Jk2在Apache的官方网站上都可以下的到. http://www.apache.org
JDK 在Sun的网站上. http://www.sun.com
solaris 会自带JDK
#java-version
可检查jdk是否正常。
Apache安装
下载 httpd-2.2.8.tar.gz
1.准备安装包httpd-2.0.55.tar
2.命令行模式进入solaris操作系统并进入到安装包所在位置,键入
#gzip –d httpd-2.2.8.tar.gz
#tar xvf httpd-2.2.8.tar
#mv httpd-2.2.8 $HOME/
#cd
#cd httpd-2.2.8
制定安装目录,安装时注意一点:一定要有 --enable-so 加载so模块,这是整合要用到的.
# ./configure --prefix=/usr/creditcare/apache --enable-so
#make
#make install
#cd
#cd apache
#cd bin
输入
#./apachectl start
不报错则说明启动成功。
测试Apache,打开浏览器输入http://192.168.100.xxx 网页内容为 It Work ! 表示成功! 出错:1.设置端口:apache/conf>vi httpd.conf
增加Listen 8989 (设置端口)
设置主机DNS 增加ServerName 192.168.100.103:8989
Tomcat安装
下载 apache-tomcat-5.5.26.tar.gz
1.安装
#gzip –d apache-tomcat-5.5.26.tar.gz
#tar xvf apache-tomcat-5.5.26.tar
#mv apache-tomcat-5.5.26 tomcat5.5
2.设置环境变量
(一般是etc/profile)
或者是etc目录下的某个文件
###############################################################
#定义TOMCAT环境变量#
###############################################################
JAVA_HOME=/usr/jdk/jdk1.5.0_07
export JAVA_HOME
CATALINA_BASE=/usr/test/tmp/tomcat5.5
CATALINA_HOME=/usr/test/tmp/tomcat5.5
PATH=$PATH:$CATALINA_HOME/bin
export CATALINA_BASE CATALINA_HOME PATH
3. 设置TOMCAT
#cd tomcat5.5/bin>
#vi startup.sh
在startup.sh 与shutdown.sh的开头增加如下:
##################################
# JAVA_HOME #
##################################
LANG=C
export LANG
JAVA_HOME=/usr/jdk/jdk1.5.0_07
export JAVA_HOME
注意: 如果不设置 export lang=c 系统有可能提示couldn't set locale correctly.
4.运行
#startup.sh 启动正常则没错.
在WEB页面运行 http://serverip:8080 出现猫则正常.
用jk整合apache 与 tomcat
下载t omcat-connectors-1.2.26-src.tar.gz
/usr/creditcare/zxytest/tmp/jk/native>./buildconf.sh系统提示:
rm autom4te.cache
libtoolize --force --automake --copy
./buildconf.sh[33]: libtoolize: not found
aclocal
./buildconf.sh[37]: aclocal: not found
autoheader
./buildconf.sh[39]: autoheader: not found
automake -a --foreign --copy
./buildconf.sh[41]: automake: not found
autoconf
./buildconf.sh[43]: autoconf: not found
rm autom4te.cache
#./configure --with-apxs=/usr/creditcare/zxytest/tmp/apache2/bin/apxs
#make
安装在/usr/creditcare/zxytest/tmp/apache2/bin/apxs
#cd /usr/creditcare/zxytest/tools/tomcat-connectors-1.2.26-src/native/apache-2.0>
#cp mod_jk.so /usr/creditcare/test/tmp/apache2/modules
JK 的配置最关键的有三个文件,分别是
httpd.conf
Apache 服务器的配置文件,用来加载 JK 模块以及指定 JK 配置文件信息
workers.properties
到 Tomcat 服务器的连接定义文件
uriworkermap.properties
URI 映射文件,用来指定哪些 URL 由 Tomcat 处理,你也可以直接在 httpd.conf 中配置这些 URI,但是独立这些配置的好处是 JK 模块会定期更新该文件的内容,使得我们修改
配置的时候无需重新启动 Apache 服务器。
其中第二、三个配置文件名都可以自定义。下面是一个典型的 httpd.conf 对 JK 的配置
# (httpd.conf)
# 加载 mod_jk 模块
LoadModule jk_module modules/mod_jk.so
#
# Configure mod_jk
#
JkWorkersFile conf/workers.properties
JkMountFile conf/uriworkermap.properties
JkLogFile logs/mod_jk.log
JkLogLevel warn
接下来我们在 Apache 的 conf 目录下新建两个文件分别是 workers.properties、uriworkermap.properties。这两个文件的内容大概如下
#
# workers.properties
#
# list the workers by nameworker.list=DLOG4J, status
# localhost server 1
# ------------------------
worker.s1.port=8080
worker.s1.host=localhost
worker.s1.type=ajp13
# localhost server 2
# ------------------------
worker.s2.port=8209
worker.s2.host=localhost
worker.s2.type=ajp13
worker.s2.stopped=1
worker.DLOG4J.type=lb
worker.retries=3
worker.DLOG4J.balanced_workers=s1, s2
worker.DLOG4J.sticky_session=1
worker.status.type=status
以上的 workers.properties 配置。首先我们配置了两个类型为 ajp13 的 worker 分别是 s1 和 s2,它们指向同一台服务器上运行在两个不同端口 8080和 8209 的 Tomcat 上。接下来我们配置了一个类型为 lb(也就是负载均衡的意思)的 worker,它的名字是 DLOG4J,这是一个逻辑的 worker,它用来管理前面配置的两个物理连接 s1 和 s2。最后还配置了一个类型为 status 的 worker,这是用来监控 JK 本身的模块。有了这三个 worker 还不够,我们还需要告诉 JK,哪些 worker 是可用的,所以就有 worker.list = DLOG4J, status 这行配置。
接下来便是 URI 的映射配置了,我们需要指定哪些链接是由 Tomcat 处理的,哪些是由 Apache 直接处理的,看看下面这个文件你就能明白其中配置的意义
/*=DLOG4J
/jkstatus=status
!/*.gif=DLOG4J
!/*.jpg=DLOG4J
!/*.png=DLOG4J
!/*.css=DLOG4J
!/*.js=DLOG4J
!/*.htm=DLOG4J
!/*.html=DLOG4J
所有的请求都由 DLOG4J 这个 worker 进行处理,但是有几个例外,/jkstatus 请求由 status 这个 worker 处理。另外这个配置中每一行数据前面的感叹号是什么意思呢?感叹号表示接下来的 URI 不要由 JK 进行处理,也就是 Apache 直接处理所有的图片、css 文件、js 文件以及静态 html 文本文件。
通过对 workers.properties 和 uriworkermap.properties 的配置,可以有各种各样的组合来满足我们前面提出对一个 web 网站的要求