文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>Tomcat-5.5.7 + Apache-2.0.46 + mod_jk-2.0.4整..

Tomcat-5.5.7 + Apache-2.0.46 + mod_jk-2.0.4整..

时间:2005-03-21  来源:wenzk

原文出处:http://blog.beijingnet.com/index.php?op=ViewArticle&articleId=81&blogId=1

安装环境:

OS:Redhat Enterprise AS 3
apahce:使用系统自带httpd-2.0.46,使用其它版本的redhat自带的apache安装过程也一样。
Tomcat:Tomcat-5.5.7
jdk:mod_jk:2.0.4
参考:
http://www.reliablepenguin.com/clients/misc/tomcat/ http://www.pixelfreak.net/howto/apache2_jk2_tomcat/socket.html http://www.csse.uwa.edu.au/~ryan/tech/mod_jk2.html http://www.edong.org/main/content/view/386/38/ http://www.pixelfreak.net/howto/apache2_jk2_tomcat/socket.html http://www.cn-java.com/target/news.php?news_id=3043  

1. 安装apache
  系统自带,无须安装。需要注意的是需要安装httpd开发包,用于编译mod_jk.
  查看是否安装httpd-develop
  #rpm -qa|grep httpd-devel
  httpd-devel-2.0.46-38.ent
  如果出现以上信息说明httpd开发包已安装,如果未安装请从redhat第三张盘中安装。
 

2、安装jdk
  从java.sun.com下载jdk-1_5_0_01-linux-i586-rpm.bin,tomcat5需要jdk5的支持。
  下载后:
  #chmod 755 jdk-1_5_0_01-linux-i586-rpm.bin
  #rpm -ivh dk-1_5_0_01-linux-i586.rpm
  在/etc/profile文件中加入:
  JAVA_HOME=/usr/java/jdk1.5.0_01
  export JAVA_HOME
  PATH=$PATH:/usr/java/jdk1.5.0_01/bin
  export PATH
  export CATALINA_HOME=/usr/local/tomcat
  export TOMCAT_HOME=/usr/local/tomcat

3.安装Tomcat
  #wget http://apache.justdn.org/jakarta/tomcat-5/v5.5.7/bin/jakarta-tomcat-5.5.7.tar.gz
  #tar zxvf jakarta-tomcat-5.5.7.tar.gz
  #mv jakarta-tomcat-5.5.7 /usr/local/tomcat

4、编译和设置mod_jk
  此时注意重新登录服务器使环境变量生效。
  #wget http://apache.justdn.org/jakarta/tomcat-connectors/jk2/jakarta-tomcat-connectors-jk2-src-current.tar.gz    
  #tar zxvf jakarta-tomcat-connectors-jk2-src-current.tar.gz    
  #cd jakarta-tomcat-connectors-jk2-2.0.4-src/jk/native2/
  #./configure --with-apxs2=/usr/sbin/apxs --with-jni --with-apr-lib=/usr/lib
  #vi server/apache2/Makefile
  将:LIBTOOL=/bin/sh /var/www/build/libtool --silent
  改为:LIBTOOL=/usr/bin/libtool
  将:
  fdef APR_LIBDIR_LA
  JK_LDFLAGS=-L${APACHE2_LIBDIR} -lcrypt
  else
  JK_LDFLAGS=-lcrypt ${APR_LIBS}
  endif
  改为:
  ifdef APR_LIBDIR_LA
  JK_LDFLAGS=-L${APACHE2_LIBDIR} -lcrypt
  else
  JK_LDFLAGS=-lcrypt ${APR_LIBS} -lapr-0 -laprutil-0 -lgdbm -ldb-4.1 -lexpat
  endif

  如果不修改以上内容,将出现以下错误:
  INFO: APR not loaded, disabling jni components: java.io.IOException: java.lang.UnsatisfiedLinkError:      
  /usr/lib/httpd/modules/libjkjni.so:
  /usr/lib/libaprutil-0.so.0: undefined symbol: gdbm_errno
  或者:
  INFO: APR not loaded, disabling jni components: java.io.IOException: java.lang.UnsatisfiedLinkError:    
  /usr/lib/httpd/modules/libjkjni.so:
  /usr/lib/httpd/modules/libjkjni.so: undefined symbol: apr_md5_final
  #make
  #libtool --finish /usr/lib/httpd/modules
  #cp ../build/jk2/apache2/mod_jk2.so ../build/jk2/apache2/libjkjni.so /usr/lib/httpd/modules/
  mod_jk安装完毕。

6、配置tomcat
  #vi vi /usr/local/tomcat/bin/catalina.sh
  # Get standard environment variables
  PRGDIR=`dirname "$PRG"`
  CATALINA_HOME=`cd "$PRGDIR/.." ; pwd`
  if [ -r "$CATALINA_HOME"/bin/setenv.sh ]; then
  . "$CATALINA_HOME"/bin/setenv.sh
  fi
  # 添加以下行
  serverRoot=/etc/httpd
  export serverRoot

  #vi /usr/local/tomcat/conf/jk2.properties
  handler.list=apr,request,channelJni
  channelUnix.file=/usr/local/tomcat/work/jk2.socket
  serverRoot=/etc/httpd
  apr.NativeSo=/usr/lib/httpd/modules/libjkjni.so

  #vi /usr/local/tomcat/conf/server.xml
  在</Engine>前加入
 <Host name="www.abc.com" debug="1" appbase="/var/www/abc" unpackwars="true">
   <Context path="" docBase="" debug="1"/>
</Host>
  配置其它虚拟主机与此同。
 
7、设置虚拟主机
   比如,我现在有虚拟主机 www.abc.com 希望把jsp和servlet都转到tomcat去

   在 /etc/httpd/conf/ 下面创建workers2.properties,内容如下:
   [shm]
   file=/var/log/httpd/shm.file
   size=1048576

   # Example socket channel, explicitly set port and host.
   [channel.socket:localhost:8009]
   port=8009
   host=127.0.0.1

   # Example UNIX domain socket
   [channel.un:/usr/local/tomcat/work/jk2.socket]
   tomcatId=localhost:8009
   debug=0

   # define the worker
   [ajp13:localhost:8009]
   #channel=channel.un:/usr/local/tomcat/work/jk2.socket
   # To use the TCP/IP socket instead, just comment out the above
   # line, and uncomment the one below
   channel=channel.socket:localhost:8009

   # Announce a "status" worker
   [status:status]

   [uri:/status/*]
   worker=status:status

   # Uri mapping
   [uri:/jsp-examples/*]

   在/etc/httpd/conf/httpd.conf里面配置:
   #tomcat
   LoadModule jk2_module modules/mod_jk2.so
   JkSet config.file /etc/httpd/conf/workers2.properties

   #把下面这段放到VirtualHost之前,可以从全局避免用户用apache访问WEB-INF目录。
   
   <Directory ~ "/WEB-INF/">
    Order allow,deny
    Deny from all
   </Directory>
   

   #典型的VirtualHost配置样本
   NameVirtualHost 1.2.3.4 #(1.2.3.4你的服务器IP)
   <VirtualHost 1.2.3.4>
   ServerName www.abc.com
   DocumentRoot /var/www/abc
   DirectoryIndex index.htm index.html default.htm index.php index.jsp
   <Location ~ "/*.jsp|/*/servlet/*>
   JkUriSet worker ajp13:localhost:8009
   </Location>
   ErrorLog logs/www.abc.com-err_log
   CustomLog logs/www.abc.com-acc_log common
   </VirtualHost>
   
   这样就可以为每个不同的虚拟主机分别指定使用或者不使用jsp功能。

8、启动、测试
  #service httpd start
  #/usr/local/tomcat/bin/startup.sh
  浏览器里输入
  http://1.2.3.4/jsp-examples/
  http://1.2.3.4/status/

  如果没有问题则说明安装成功。

欢迎与我交流
qq:138722
e-mail:[email protected]

相关阅读 更多 +
排行榜 更多 +
史诗竞速赛3D

史诗竞速赛3D

休闲益智 下载
加油站汽车修理工

加油站汽车修理工

休闲益智 下载
火柴人像素战斗

火柴人像素战斗

休闲益智 下载