快速配置Apache2.X + Tomcat 4.X + Linux/Windows 
  
                                                                      ------作者              赵建青 
  
              当您选择自由软件像linux、apache、tomcat 等进行应用开发时。其相关配置是令许多程序员头疼的事情,往往由于文档不全,版本不同造成不必要的时间浪费。现在我把Apache2.x+Tomcat4.x集成与负载均衡配置过程、经验与大家分享.。 
  
一、测试环境: 
A、Linux 
测试操作系统:       Red Linux 7.2 
JDK                  Download j2sdk-1_4_1_02-linux-i586.bin . 
Apache                 Unix Source: httpd-2.0.45.tar.gz [PGP] [MD5] 
Tomcat                 Tomcat 4.1.24 
Mod_jk.so              jakarta-tomcat-connectors-jk-1.2.3-src.tar.gz   
附加开发工具包:(用来生成mod_jk.so) 
AutoConf-2.53 
AutoMake-1.6.3 
Libtool-1.4.2 
到相应的网站下到这些开发包(否则不能生成mod_jk.so): 
它们安装类同分别执行以下三部: 
如果是tar 格式,先解到 /tmp下 
用root用户进到相应的目录做以下操作 
./configure 
./make 
./make install 
  
B、Win2000 
测试操作系统:       Win2000 Advance Server 
JDK                        Download j2sdk-1_4_1_02-windows-i586.exe  
Apache                 apache_2.0.45-win32-x86-no_ssl.exe 
Tomcat                 Tomcat 4.1.24 
Mod_jk.dll        mod_jk_2.0.45.dll 
  
二、JDK安装: 
A、 Linux: 
1、  cp /tmp 
2、  ./*-linux-i586.bin 
B、Win2000  
       点击运行*.exe即可 
  
三、Apache 安装、设置: 
A、 Linux 
1、  建立httpd 用户,cp 相应的源代码到 /tmp) 
2、  解包(gzip –d httpd-2.0.45.tar.gz  tar xvf httpd-.2.0.45.tar) 
3、  cd /home/httpd/ 
4、  su 
5、  ./configure –prefix=/home/httpd --libexecdir=/home/httpd/lib --enable-module=most –enable-mods-shared=most 
--enable-module=so 
6、  make 
7、  make install 
B、Win2000 
运行setup.exe 
       C、设置 
1、  打开 conf/httpd.conf文件 
修改 Listen 80    #80改为其它未用port 8003 
修改以下一行 
ServerName localhost 
  
2、  测试 
apachectl configtest 
如果显示 
Syntax ok 
表示成功 
  
四、Tomcat       安装设置 
A、 Linux: 
1、  建立tomcat 用户 
2、  tar 开包 
B、  Win2000 
 解开包即可 
C、  设置 
JAVA_HOME=/usr/local/jdk  #改成jdk实际path 
CATALINA_HOME=/home/tomcat 
D、运行、停止 
 运行:startup.sh /startup.bat 
 停止:shutdown.sh/shutdown.bat 
  
五、生成mod_jk 
A、 Linux 
在apache站点没有发现mod_jk.so的二进制动态库,所以要手工生成,有点 
麻烦,以下是生成mod_jk.so的steps 
1、  确定libtool,autoconf,automake 正确安装 
2、  cp  jakarta-tomcat-connectors-jk-1.2.3-src.tar.gz  /tmp 
3、  解包 
4、  cd jk/native 
5、  ./buildconf.sh 
6、  ./configure –with-apx=/httpd安装目录/bin/apx –with-java-home=${JAVA_HOME} 
7、  make 
8、  make install 
9、  在apache-2.0目录中生成mod_jk.so 
恭喜你成功产生了它,如果没有话确让以上几个steps 
  
  
  
B、 Win2000 
六、整合: 
A、 Linux : 
1、  打开/usr/httpd/conf/httpd.conf 
增加以下行: LoadModule jk_module lib/mod_jk.so JkWorkersFile conf/workers.properties JkLogFile logs/mod_jk.log JkLogLevel info B、 Win2000: 
1、  打开httpd.conf 
增加以下行: LoadModule jk_module lib/mod_jk.dll   JkWorkersFile conf/workers.properties JkLogFile logs/mod_jk.log       JkLogLevel info   
C、设置: 
增加文件 workers.properties # # workers.properties  ps=/   # list the workers by name   worker.list=tomcat1, tomcat2, loadbalancer   # ------------------------ # First tomcat server # ------------------------ worker.tomcat1.port=11009 worker.tomcat1.host=localhost worker.tomcat1.type=ajp13 worker.tomcat1.lbfactor=100   # Second tomcat server # ------------------------ worker.tomcat2.port=12009 worker.tomcat2.host=localhost worker.tomcat2.type=ajp13 worker.tomcat2.lbfactor=100   worker.loadbalancer.type=lb worker.loadbalancer.balanced_workers=tomcat1, tomcat2   
  
注意此文件编辑有错的话,apache与tomcat连接会失败 
最好是粘贴以上行到一个新的worker.properties中, 
  
  
找到 {TOMCAT_HOME}/conf目录 
打开server.xml 1.       在100 行附近将 <Engine jvmRoute="tomcat1" name="Standalone" defaultHost="localhost" debug="0"> 2.       在75 行 改变ajp13 connecter port 为11009 3.       注释掉8080端口                   如果你要做到负载均衡,                   增加另一个                   tomcat 应用服务器(可以在不同的机器上)                   端口,IP改为与workers.properties 相同即可   七、测试:          A、整合测试:                   运行httpd                        apachectl start                   运行 tomcat                        startup.sh                   在IE中输入:                   http://1ocalhost:8003/index.jsp                     如果看到了一只lovely cat !                     Congratulation,                     It’s ok!                   注意8003改成实际的httpd 的端口            B、负载均衡测试:          新建两个index.jsp                   Tomcat1:  <html> <body bgcolor="red"> <center> <%= request.getSession().getId() %> <h1>Tomcat 1</h1> </body> </html>           tomcat2: <html> <body bgcolor="blue"> <center> <%= request.getSession().getId() %> <h1>Tomcat 2</h1> </body> </html>             自己去看看结果吧:          祝你好运了!!!!!!!!!!!!!!!!!! 八、小结:          以上是整合的全过程,希望更多人少走弯路了。在总个配置中关键是mod_jk.so 和workers.properties的生成和配置,建议你粘上面workers.properties行为自己的配置文件。如果在设置是遇到什么问题或需要已生成mod_jk.so可以发邮件到 [email protected],很乐意跟大家探讨相关应用。  
 
  |