设为首页 收藏本站
查看: 526|回复: 0

[经验分享] 安装 Apache 2 和 Tomcat 5.5(转)

[复制链接]

尚未签到

发表于 2017-1-9 09:44:38 | 显示全部楼层 |阅读模式
安装 Apache 2 和 Tomcat 5.5
--------------------------------------------------------------------------------
本文档主要讲述在 Debian/testing 平台上如何简单的将Tomcat5.5和Apache2整合到一起.
--------------------------------------------------------------------------------

1. 声明

版本信息:
本文档的最新版本将张贴于: LinuxSir.Org论坛 Debian 发行版讨论区 ;

也可以从 http://debian.linuxsir.org/ 获取.

反馈:
所有评论, 错误报告, 其他信息以及批评, 请邮寄到 etony@tom.com ;

或在LinuxSir.Org论坛 Debian发行版讨论区 张贴.

版权信息:
本文档的版权(c)2006-2007 归 etony C.F.AN 所有.

转载请注明源自 http://debian.linuxsir.org/ .


2. 配置 JAVA 环境
操作步骤, 请参阅: 安装Java环境

3. 配置 tomcat5.5
tomcat4 太古老的一个版本了, 这里我们选择 tomcat5.5 作为配置环境.

当前 tomcat5.5 版本为 5.5.17. 由于 tomcat5.5 的更新速度很快, 我选择从 tomcat 的官方网站下载.


$ wget http://apache.justdn.org/tomcat/tomcat-5/v5.5.17/bin/apache-tomcat-5.5.17.tar.gz


将其解压到工作目录, 比如


# tar zxvf apache-tomcat-5.5.17.tar.gz -C /opt/


配置环境变量


# export CATALINA_HOME=tomcat_install_path //比如这里应该是 /opt/apache-tomcat-5.5.17/


你可以将其加入启动脚本中,比如 .bashrc. 然后, 运行 tomcat, 检查配置情况:


# tomcat_intall_path/bin/startup.sh  //  这里是/opt/tomcat5.5//bin/startup.sh


如果抛出错误, 根据错误检查自己的配置.

4. 获取 JK 模块
可以通过 apt-get 获取 JK 模块或直接从官方网站获取编译好的二进制模块, 但是编译JK一点也不麻烦, 这里我选择编译生成 JK 模块, 这有背 Debian 的方法 ;)


下载JK模块的源代码
JK的当前版本是 1.2.15, 运行下边的命令获取源代码:


$ wget http://www.apache.org/dist/tomcat/tomcat-connectors/jk/source/jk-1.2.15/jakarta-tomcat-connectors-1.2.15-src.tar.gz


解压到临时目录:

# tar zxvf jakarta-tomcat-connectors-1.2.15-src.tar.gz -C /tmp/


配置编译环境
安装编译 JK 所需要的软件包:


#aptitude update
#aptitude install ibtool autoconf gcc apache2-prefork-dev  g++


编译 JK 模块
在JK的解压目录下运行:


#cd /tmp/jakarta-tomcat-connectors-1.2.15-src/jk/native

#./configure --with-apxs=/usr/bin/apxs2

or

#./configure --with-apache=/etc/apache2

#make


详细的编译说明, 请参阅: Jakarta Tomcat Connector: Installation for Apache 2.x 将生成的 JK 模块 JK 复制到 /usr/lib/apache2/modules/


#cp ./apache-2.0/mod_jk.so /usr/lib/apache2/modules/



5. 创建配置文件

/etc/apache2/conf.d/mod_jk.conf

# 指出mod_jk模块工作所需要的工作文件workers.properties的位置
JkWorkersFile /etc/apache2/workers.properties

# Where to put jk logs
JkLogFile /var/log/apache2/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 indicate to send SSL KEY SIZE,
JkOptions  +ForwardKeySize +ForwardURICompat -ForwardDirectories

# JkRequestLogFormat set the request format
JkRequestLogFormat "%w %V %T"

# 将所有servlet 和jsp请求通过ajp13的协议送给Tomcat,让Tomcat来处理
JkMount /servlet/*  worker1
JkMount /*.jsp worker1


/etc/apache2/mods-available/jk.load

LoadModule jk_module modules/mod_jk.so
Include /etc/apache2/conf.d/mod_jk.conf


并创建符号链接到mods-enabled

/etc/apache2/workers.properties
一个workers.properties例子:


  # Define some properties
  workers.apache_log=/var/log/httpd/
  workers.tomcat_home=/var/tomcat3
  workers.java_home=/opt/IBMJava2-131/
  ps=/
  # Define 4 workers, 3 real workers using ajp12, ajp13, jni, the last one being a loadbalancing worker
  worker.list=worker1, worker2, worker3, worker4
  # Set properties for worker1 (ajp12)
  worker.worker1.type=ajp12
  worker.worker1.host=locahost
  worker.worker1.port=8007
  worker.worker1.lbfactor=1
  # Set properties for worker2 (ajp13)
  worker.worker2.type=ajp13
  worker.worker2.host=locahost
  worker.worker2.port=8009
  worker.worker2.lbfactor=1
  worker.worker2.cachesize=10
  worker.worker2.cache_timeout=600
  worker.worker2.socket_keepalive=1
  worker.worker2.socket_timeout=60
  # Set properties for worker3 (jni)
  worker.worker3.type=jni
  # Set worker3 bridge type, here Tomcat 3.3
  worker.worker3.bridge=tomcat33
  # Set worker3 classpath
  worker.worker3.class_path=$(workers.tomcat_home)$(ps)classes
  worker.worker3.class_path=$(workers.tomcat_home)$(ps)lib$(ps)tomcat.jar
  # Set worker3 tomcat command line
  worker.worker3.cmd_line=-home
  worker.worker3.cmd_line=$(workers.tomcat_home)
  # Set worker3 Tomcat/JVM settings
  worker.worker3.jvm_lib=$(workers.java_home)$(ps)jre$(ps)bin$(ps)classic$(ps)libjvm.so
  worker.worker3.stdout=$(workers.apache_log)$(ps)inprocess.stdout
  worker.worker3.stderr=$(workers.apache_log)$(ps)inprocess.stderr
  worker.worker3.sysprops=tomcat.home=$(workers.tomcat_home)
  # Set properties for worker4 (lb) which use worker1 and worker2
  worker.worker4.balance_workers=worker1,worker2


或直接使用

# 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



6. 创建虚拟站点
创建虚拟站点配置文件 /etc/apache2/sites-available/



创建符号链接到目录 /etc/apache2/sites-enabled/

最后编辑Tomcat的配置文件, 将其根目录指向所创建站点的根目录。

7. 测试
创建一个简单的jsp文件,比如



<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Test Page</title>
</head>
<body>
    <h1>JSP Test Page</h1>
   
    <%= new java.util.Date() %>
</body>
</html>
   
  


置于根目录下,然后通过浏览器访问!

8. 参考文档

Jakarta Tomcat Connector: Installation for Apache 2.x
Jakarta Tomcat Connector: Workers HowTo
Linux下Apache与Tomcat整合的简单方法

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-325835-1-1.html 上篇帖子: org.apache.tiles.impl.InvalidTemplateException: Cannot render a null template 下篇帖子: 通过 Apache 的 Jarkata Common Email 来发送email
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表