/ 中存储网

solaris系统安装配置Apache ,Tomcat服务器环境

2014-02-03 13:21:01 来源:ITJS.CN

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 name

worker.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 网站的要求