概述: 本文档说明了如何将jboss与apache集成。经查询,有多种方法将apache与jboss集成, 经比较,我认为这是一种比较成熟实用的方法。特此记下来。
英文参考文献地址: http://www.jboss.org/wiki/Wiki.jsp?page=UsingMod_jkWithJBoss http://www.jboss.org/wiki/Wiki.jsp?page=UsingMod_jk1.2WithJBoss
文中指出,使用mod_jk1.2是比较好的办法,呵呵,我也这么认同。 第一步: 安装apache,由于Linux自带了apache,省去吧,我用的是RHEL 3.0 第二步: 下载并编译mod_jk1.2,地址在:http://jakarta.apache.org/site/sourceindex.cgi 原文建议下载二进制文件,不过编译源程序很容易地,编译一下吧; 第三步:配置apache. 三个文件: /*****************************/etc/httpd/conf.d/mod_jk.conf*********************************** # 因为在/etc/httpd/conf/httpd.conf文件中有一句Include conf.d/*.conf,所以,在httpd.conf中不需要添加任何语句 # Load mod_jk module # Specify the filename of the mod_jk lib LoadModule jk_module modules/mod_jk.so # Where to find workers.properties JkWorkersFile conf.d/workers.properties # Where to put jk logs JkLogFile logs/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 indicates to send SSK KEY SIZE JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories # JkRequestLogFormat JkRequestLogFormat "%w %V %T" #JkMount /* node1 JkMount /*.jsp node1 JkMount /*.jspx node1 JkMount /YOURAPPs/* node1 JkMount /jmx-console/* node1 ***************************************************************************************/
/*********************************/etc/httpd/conf.d/workers.properties****************** # 如果你需要用到负载均衡可以将注释语句去掉 # Define Node1 worker.node1.port=8009 worker.node1.host=localhost worker.node1.type=ajp13 worker.node1.lbfactor=1 #worker.node1.local_worker=1 (1) worker.node1.cachesize=10 worker.node1.cache_timeout=600 worker.node1.socket_timeout=300 # Define Node2 #worker.node2.port=8009 #worker.node2.host=127.0.0.1 #worker.node2.type=ajp13 #worker.node2.lbfactor=1 #worker.node2.local_worker=1 (1) #worker.node2.cachesize=10 # Load-balancing behaviour #worker.loadbalancer.type=lb #worker.loadbalancer.balanced_workers=node1, node2 #worker.loadbalancer.sticky_session=1 #worker.loadbalancer.local_worker_only=1 worker.list=node1 #loadbalancer ***************************************************************************************/
/****************************${tomcathome}/server.xml********************************** //找到以下语句,其中jvmRoot="node1"是新增的 <Engine name="jboss.web" defaultHost="localhost" jvmRoot="node1"> ***************************************************************************************/
另外,本课题外之语是: 我顺便修改了server.xml的两个位置: 将<Connector port="8080" address="${jboss.bind.address}"这一行注释起来了,以便关闭8080端口, 同时在8009端口上添加了一句:URIEncoding="utf-8"以便能正确地处理get请求中的中文字符。
还有一个技巧是我个修改了/var/www/html/index.jsp文件,以便使我用户访问域名时可以自动定位到适合的页面。 这个文件将在另一文件中呈现。