Jboss、apache整合
System:Linux5.5 x86_64
Author:hx10
Date:2010/9/22 hangzhou
Blog:http://hx100.blog.51cto.com
IP:192.168.145.129
软件列表如下:
jdk-6u11-linux-x64.bin
jboss-4.2.3.GA.zip
httpd-2.2.16.tar.gz
mod_jk-1.2.30-httpd-2.2.X.so
都放到/usr/local/目录下
第一步、安装jdk
cd /usr/local/
chmod +x jdk-6u11-linux-x64.bin
./jdk-6u11-linux-x64.bin
设置环境变量
vim /etc/profile
- JAVA_HOME=/usr/local/jdk1.6.0_11
- JRE_HOME=/usr/local/jdk1.6.0_11/jre
- PATH=$JAVA_HOME/bin:JRE_HOME/bin:$PATH
- CLASSPATH=.:$JAVA_HOME/lib/jt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
- export JAVA_HOME JRE_HOME PATH CLASSPATH
source /etc/profile
[root@linux local]# java -version
- java version "1.6.0_11"
- Java(TM) SE Runtime Environment (build 1.6.0_11-b03)
- Java HotSpot(TM) 64-Bit Server VM (build 11.0-b16, mixed mode)
第二步、安装jboss
cd /usr/local/
unzip jboss-4.2.3.GA.zip
第三步、安装apache
wget http://docs.linuxtone.org/soft/lemp/CentOS-Base.repo -O /etc/yum.repos.d/CentOS-Base.repo
yum -y install zlib-devel
如果不安装,报错如下:
- checking for zlib location... not found
- checking whether to enable mod_deflate... configure: error: mod_deflate has been requested but can not be built due to prerequisite failures
tar -zxvf httpd-2.2.16.tar.gz
cd httpd-2.2.16
- ./configure --prefix=/usr/local/apache --enable-so --enable-vhost-alias --enable-rewrite --enable-deflate --enable-mods-shared=all --with-mpm=worker
make
make install
第四步、使用mod.jk来结合apache和jboss
4-1、先安装mod.jk
方法1:
下载地址:http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/
cd /usr/local/src
wget http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/linux/jk-1.2.30/x86_64/mod_jk-1.2.30-httpd-2.2.X.so
cp mod_jk-1.2.30-httpd-2.2.X.so /usr/local/apache/modules/mod_jk.so
方法2:
安装mod_jk.so的,测试通过的
tar –zxvf tomcat-connectors-1.2.30-src.tar.gz
cd tomcat-connectors-1.2.23-src
cd native
./configure --with-apxs=/usr/local/apache/bin/apxs
make
cp ./apache-2.0/mod_jk.so /usr/local/apache/modules/
4-2、修改apache的配置文件
vim /usr/local/apache/conf/httpd.conf
1.
查找LoadModule,在这一段最后添加
- LoadModule jk_module modules/mod_jk.so
2.
- Include conf/extra/httpd-vhosts.conf //这一句前面的#去掉
3. 增加一个配置文件,就在vhost下面
- # Virtual hosts
- Include conf/extra/httpd-vhosts.conf //在这一行下添加
- Include conf/mod_jk.conf
4.
修改
- #ServerName www.example.com:80为ServerName 127.0.0.1:80
5.添加默认首页
- <IfModule dir_module>
- DirectoryIndex index.html index.htm index.jsp
- </IfModule>
4-3、增加mod_jk配置文件
在/usr/local/apache/conf/下面建立两个配置文件mod_jk.conf和workers.properties
cd /usr/local/apache/conf/
vim mod_jk.conf
- JkWorkersFile conf/workers.properties
- JkLogFile logs/mod_jk.log
- JkLogLevel info
- JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
- JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
- JkRequestLogFormat "%w %V %T"
注释如下:
# 指出以下mod_jk模块工作所需要的工作文件workers.properties的位置
JkWorkersFile /usr/local/apache/conf/workers.properties
# 指出 mod_jk 模块的日志输出位置
JkLogFile /usr/local/apache/logs/mod_jk.log
# 设置 mod_jk 模块的日志级别 [debug/error/info]
JkLogLevel info
# 设置 mod_jk 模块的日志格式
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"
# 将所有对特定文件或目录的请求通过ajp13的协议送给JBoss,让JBoss服务器来处理
#(用于测试配置是否成功,配置成功后请注释)
JkMount /web-console/* worker1
# 将所有对后台(带有/xxxx目录)的请求通过ajp13的协议送给JBoss,让JBoss服务器来处理
JkMount /xxxx/* worker1
vim workers.properties
- #Defining a worker named worker1 and of type ajp13
- worker.list=worker1
- #Set properties for worker1
- 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.socket_timeout=300
4-5、配置apache的vhost
配置/usr/local/apache/conf/extra/httpd-vhosts.conf,增加mod_jk的配置
vim /usr/local/apache/conf/extra/httpd-vhosts.conf
- NameVirtualHost *:80
- #
- # VirtualHost example:
- # Almost any Apache directive may go into a VirtualHost container.
- # The first VirtualHost section is used for all requests that do not
- # match a ServerName or ServerAlias in any <VirtualHost> block.
- #
- <VirtualHost *:80>
- ServerAdmin webmaster@hx10.com
- DocumentRoot "/usr/local/jboss-4.2.3.GA/server/default/deploy"
- ServerName 192.168.145.129
- ServerAlias www.hx10.com
- JkMount /*.jsp worker1
- JkMount /jmx-console/* worker1 //这个工程能通过80端口来访问
- JkMount /web-console/* worker1 //这个工程能通过80端口来访问,如果没有定义的工程,不能访问
- #apache will serve the static picture
- JkUnMount /*.jpg worker1
- #JkUnMount /*.gif worker1
- JkUnMount /*.swf worker1
- JkUnMount /*.bmp worker1
- JkUnMount /*.png worker1
- ErrorLog "logs/dummy-host.example.com-error_log"
- CustomLog "logs/dummy-host.example.com-access_log" common
- </VirtualHost>
4-6、修改jboss配置文件
jboss默认的端口是8080,可以注视掉,通过8009交给apache来解析
cd /usr/local/jboss-4.2.3.GA/server/default/deploy/jboss-web.deployer
vim server.xml
- <!--
- <Connector port="8080" address="${jboss.bind.address}"
- maxThreads="250" maxHttpHeaderSize="8192"
- emptySessionPath="true" protocol="HTTP/1.1"
- enableLookups="false" redirectPort="8443" acceptCount="100"
- connectionTimeout="20000" disableUploadTimeout="true" />
- -->
这这一段注视掉
4-7、启动和停止
最后启动apache和jboss
/usr/local/apache/bin/apachectl start
setsid /usr/local/jboss-4.2.3.GA/bin/run.sh -b 0.0.0.0
最后来一个展示(jmx-console后面需要一个/)
转载于:https://blog.51cto.com/hx100/395967