Chinaunix首页 | 论坛 | 博客
  • 博客访问: 10804925
  • 博文数量: 2905
  • 博客积分: 20098
  • 博客等级: 上将
  • 技术积分: 36298
  • 用 户 组: 普通用户
  • 注册时间: 2009-03-23 05:00
文章存档

2012年(1)

2011年(3)

2009年(2901)

分类: LINUX

2009-03-23 11:26:20

LinuxApache/Jboss整合
 
操作系统
Redhat as4
 
所需软件包:
Apache所用包:httpd-2.0.59.tar.gz
Jboss 所用包:jboss-4.0.3SP1.tar.gz
JDK 所用包:j2sdk-1_4_2_11-linux-i586.bin
整合所需包:jakarta-tomcat-connectors-1.2.13-src.tar.gz
 
1、环境配置
字符集配置
设定系统语言环境:/etc/sysconfig/i18nzh_CN.GBK
vi /etc/sysconfig/i18n
LANG="zh_CN.GBK"
SUPPORTED="zh_CN.GBK:zh:zh_CN.GB2312:zh:zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="latarcyrheb-sun16"
 
检查服务器的时区与时间是否设定正确:正确时区应设定为:China standard Time(CST) 中国标准时间。
执行cat /etc/sysconfig/clock看是否有以下3行显示,如果不是的话则需要做下面的修改步骤(或者执行timeconfig)
ZONE="Asia/Shanghai"
UTC=false
ARC=false
修改步骤:
#mv /etc/localtime /etc/localtime.bak
# ln -sf /usr/share/zoneinfo/Asia/Shanghai  /etc/localtime
将时区文件(/etc/sysconfig/clock)更改为以下内容:
ZONE=Asia/Shanghai
UTC=false
ARC=false
 
2、安装JDK
修改j2sdk权限为可执行
#chmod 755 j2sdk-1_4_2_11-linux-i586.bin
#./j2sdk-1_4_2_11-linux-i586.bin
依照提示安装选择yes执行安装
 
#mv j2sdk1.4.2_11 /usr/local/termite/
#vi /etc/profile
加入下面几行:
JAVA_HOME=/usr/local/termite/j2sdk1.4.2_11
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar
NLS_LANG='SIMPLIFIED CHINESE_CHINA'.ZHS16GBK
PATH=$JAVA_HOME/bin:$PATH:$HOME/bin:$JAVA_HOME/jre/bin
注意:
$JAVA_HOME/bin:要放在最前面因为这个才是我们安装的jdk的路径,开发的程序一般都执行这个路径下的JDK.如果不放在最前面,执行的就有可能是系统自带的JDK了,有些时候会因为路径错误而报错。
 
修改export这一行,添加:
export JAVA_HOME CLASSPATH PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC NLS_LANG
 
备份源文件
# mv /usr/bin/java /usr/bin/java.bak
# mv /usr/bin/javac /usr/bin/javac.bak  如果没有javac则不用此步
 
注销环境,使环境变量生效(或者执行source /etc/profile命令   
# java
# javac
#java -version
如果java javac运行了,说明java环境变量配置成功。
 
3、安装jboss
#tar -zxvf jboss-4.0.3SP1.tar.gz
#mv jboss-4.0.3SP1 /usr/local/termite
 
jboss启动与关闭
启动jboss
nohup /usr/local/termite/jboss-4.0.3SP1/bin/run.sh &   \\jboss的后台运行命令
 
查看启动信息:
tail -f nohup.out
 
关闭jboss
/usr/local/termite/jboss-4.0.3SP1/bin/shutdown.sh -S
 
========================================
nohup ./run.sh &
注意run.sh的路径
shell中回车后会提示:
[~]$ appending output to nohup.out
 
原程序的的标准输出被自动改向到当前目录下的nohup.out文件,起到了log的作用。
 
Jboss服务端口(也是默认端口)为8080
 
4.安装Apache
tar –zxvf httpd-2.0.59.tar.gz
cd httpd-2.0.59
./configure --prefix=/usr/local/termite/apache --enable-so --enable-vhost-alias --enable-rewrite --enable-deflate --enable-mods-shared=all --with-mpm=worker
make
make install
注:采用worker模式,没有原来的256进程限制。
ln -s /usr/local/termite/apache/conf/httpd.conf /etc/httpd.conf
 
根据实际情况,设置好Web端口、默认语言编码、默认页、虚拟目录等
Apache服务端口为80
 
5.安装jakarta-tomcat-connectors-1.2.13-src.tar.gz
tar zxvf jakarta-tomcat-connectors-1.2.13-src.tar.gz
cd jakarta-tomcat-connectors-1.2.13-src
cd jk/native
./configure --with-apxs=/usr/local/termite/apache/bin/apxs --with-java-home=/usr/local/termite/j2sdk1.4.2_11 --with-java-platform=2 --enable-jni
make
cp apache-2.0/mod_jk.so /usr/local/termite/apache/modules/
 
注:如果此处的mod_jk.so是通过其它方法或者途径得到的,在后面启动apache的时候可能会提示:Cannot load /usr/local/termite/apache/modules/mod_jk.so into server: /usr/local/termite/apache/modules/mod_jk.so: invalid ELF header
file mod_jk.so 可能会显示 mod_jk.so: MS-DOS executable (EXE), OS/2 or MS Windows
而正确的应该显示mod_jk.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), not stripped
 
cd /usr/local/termite/apache/modules
chmod 755 mod_jk.so
cd /usr/local/termite/jboss-4.0.3SP1/server/default/deploy/jbossweb-tomcat55.sar/
vi server.xml 37行左右)
修改为 jvmRoute="node1">
vi META-INF/jboss-service.xml 112行左右)
激活端口 true
cd /usr/local/termite/apache/conf/
建立新文件
vi workers.properties,文件内容如下:
worker.list=loadbalancer,status
worker.node1.port=8009
    worker.node1.host=Rick.com
    worker.node1.type=ajp13  
    worder.node1.lbfactor=1
    worker.node1.cachesize=10
    worker.node2.port=8009
    worker.node1.host=localhost
    worker.node1.type=ajp13
    worder.node1.lbfactor=1
    worker.node1.cachesize=10
    worker.loadbalancer.type=lb
    worker.loadbalancer.balance_workers=node1,node2
    worker.loadbalancer.sticky_session=1
    worker.status.type=status
vi uriworkermap.properties 文件,文件内容如下:
/jmx-console=loadbalancer
/jmx-console/*=loadbalancer
/web-console=loadbalancer
/web-console/*=loadbalancer
 
touch /var/log/httpd/jk.shm
vi /usr/local/termite/apache/conf/httpd.conf 中添加加载 mod_jk.so 信息  
在此文件中会看到一堆LoadModule230-270行左右)的加载模块,
在此处添加如下信息:
LoadModule jk_module modules/mod_jk.so
JkWorkersFile "/usr/local/termite/apache/conf/workers.properties"
JkLogFile "/usr/local/termite/apache/logs/mod_jk.log"
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%m:%s %y]"
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
JkRequestLogFormat "%w %V %T"
JkMount /application/* loadbalancer
JkMountFile "/usr/local/termite/apache/conf/uriworkermap.properties"
JkShmFile "/usr/local/termite/apache/logs/jk.shm"
 
   JkMount status
   Order deny,allow
   Deny from all
   Allow from 127.0.0.1
 
 
 
 
 
8) cd /usr/local/termite/jboss-4.0.3SP1/server/default/deploy/
   mkdir test.war
   vi test.war/hello.jsp,内容如下
    
termite’s JSP test
<%
String Msg = "termite’s JSP test.";
        out.print("Hello World!");
%>

<%=Msg%>

9)启动Apache/usr/local/termite/apache/bin/apachectl restart
10)启动Jbosscd /usr/local/termite/jboss-4.0.3SP1/bin
               nohup ./run.sh &
11)测试:
         lynx
阅读(1093) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~