您的位置:首页 > 运维架构 > Tomcat

FreeBSD 7.0 安装配置JSP环境apache+apache-tomcat+mod_jk

2014-10-14 11:07 507 查看
我先说明一下配置环境的大概情况:
* FreeBSD 7.0-RELEASE
* apache-2.2.9
* mod_jk-ap2-1.2.26
* diablo-jdk-1.6.0.07.02
* tomcat-6.0.16

具体的版本信息显示如下:
freebsd# pkg_info
apache-2.2.9_5 Version 2.2.x of Apache web server with prefork MPM.
apache-tomcat-6.0.16 Open-source Java web server by Apache, 6.x branch
diablo-jdk-1.6.0.07.02 Java Development Kit 1.6.0_07.02
mod_jk-ap2-1.2.26 Apache2 JK module for connecting to Tomcat using AJP1X

好,来看看具体的做法吧!

第一步:安装FreeBSD,采取最小化安装的步骤,随便把ports给装上吧,方便直接安装必要的ports。
这里没有什么特别的地方,只是提醒一下,安装完成后注意要更新到最新的ports tree !
由于是最小化安装,所以需要通过ports安装下面几个package:
* csup(cvsup的版本)
* portupgrade
完成安装后,更新ports tree,我使用了cvsup.FreeBSDChina.org 作为镜像!

第二步:安装 JDK -FreeBSD 发布的 JDK 1.6 软件包
从ports来编译JDK!
2.1 进 /usr/ports/java/diablo-jdk16 ,make,提示下载jdk文件(diablo-caffe-freebsd7-i386-1.6.0_07-b02.tar.bz2)到 /usr/ports/distfiles 下,
通过brower 到
http://www.FreeBSDFoundation.org/cgi...07-b02.tar.bz2
下载,需要agree。

注: 也可以下载diablo-jdk-freebsd7.i386.1.6.0.07.02.tbz文件到/usr/ports/distfiles目录下然后 pkg_add 即可
安装时,需要安装javavmwrapper-2.3.2.tbz。下载之后放到/usr/ports/distfiles目录下,安装diablo-jdk-freebsd7.i386.1.6.0.07.02.tbz时,会自动安装。

2.2 make all install clean
2.3 检查安装
freebsd# /usr/local/diablo-jdk1.6.0/bin/java -version
java version “1.6.0_07″
Diablo Java(TM) SE Runtime Environment (build 1.6.0_07-b02)
Diablo Java HotSpot(TM) Client VM (build 10.0-b23, mixed mode, sharing)

第三步:安装Tomcat
freebsd# cd /usr/ports/www/tomcat6
freebsd# make all install clean
在/etc/rc.conf中添加
tomcat60_enable=”YES”
注::先安装jdk,在通过ports安装一些软件时,会出现Environment error: "JAVA_HOME" should not be defined.

解决方案: #unsetenv JAVA_HOME

 第四步:安装Apache<
dcea
br style="color:rgb(17,17,17);font-size:13px;line-height:21px;white-space:pre-wrap;" />freebsd# cd /usr/ports/www/apache22
freebsd# make all install clean
在/etc/rc.conf中添加
apache22_enable=”YES”

第五步:Apache 与 Tomcat 的整合
5.1 必备的组件mod_jk的安装
注:apache与tomcat的整合还有其他几种方法,个人认为mod_jk的整合方式比较紧密,有关其他连接方法请自行查阅资料,此处不涉及
freebsd# cd /usr/ports/www/mod_jk-apache2
freebsd# make all install clean
5.2 编辑 /usr/local/etc/apache22/httpd.conf 文件,添加如下内容:
代码:
LoadModule jk_module libexec/apache22/mod_jk.so
include PATHTO/mod_jk.conf (PATHTO请替换为具体的路径)
5.3 建立 mod_jk.conf 文件,内容如下:
freebsd# cd /usr/local/etc/apache22
freebsd# cp mod_jk.conf.sample Includes/mod_jk.conf
freebsd# cat Includes/mod_jk.conf
# Replace jsp-hostname with the hostname of your JSP server, as
# specified in workers.properties.
#
<IfModule mod_jk.c>
JkWorkersFile etc/apache22/Includes/workers.properties
JkLogFile /var/log/mod_jk.log
JkShmFile /var/log/jk-runtime-status
JkLogLevel error
# Sample JkMounts. Replace these with the paths you would
# like to mount from your JSP server.
JkMount /*.jsp ajp13
JkMount /servlet/* ajp13
JkMount /examples/* ajp13
</IfModule>
* JkMount 是把tomcat中的URI与Apache的URI做一个映射,也就是说:
Apache 中的:http://localhost/
jsp-examples/some-jsp-file.jsp
<—- 对应 —>
Tomcat 中的:http://localhost:
<port>/jsp-examples/some-jsp-file.jsp
个人觉得应该是通过ajp13协议,而不是使用代理模式,因为tomcat的安装另外2种就是通过代理模式(2种)和ajp13协议。
5.4 创建 mod_jk 的日志文件,并设定其归属的用户和组:
freebsd# touch /var/log/mod_jk.log
freebsd# chown www:www /var/log/mod_jk.log
5.5 建立 workers.properties 文件:
freebsd# cd /usr/local/etc/apache22
freebsd# cp workers.properties.sample Includes/workers.properties
freebsd# cat Includes/workers.properties
# Incredibly simple workers.properties file, intended for connecting
# to one host, via AJP13. See the tomcat documentation for
# information on more exotic configuration options.
#
# Change jsp-hostname to the hostname of your JSP server.
#
worker.list=ajp13
worker.ajp13.port=8009 #参照 tomcat配置文件server.xml设置,默认就是8009
worker.ajp13.host=localhost
worker.ajp13.type=ajp13
worker.ajp13.lbfactor=1
5.5 更改 workers.properties 文件归属的用户和组:
freebsd# chown www:www workers.properties

附加说明: 以上设置其实就是对apache httpd.conf的改动,改动被编辑到mod_jk.conf,其实最后还是要被include到httpd.conf中,只要理解以上改动最终生效都是要包含在apache的配置文件中就可以
另外,也可以在apache httpd-vhosts.conf中特定的虚拟主机上进行映射,例如
<VirtualHost *:80>
ServerName sample.com
ServerAlias
www.sample.com
DocumentRoot "PATHTO/www.sample.com/htdocs"
DirectoryIndex index.htm index.html index.jsp
JkMount /* ajp13
</VirtualHost>

第六步:进行测试
6.1 启动服务
freebsd# /usr/local/etc/rc.d/tomcat6 start
Starting tomcat60.
freebsd# /usr/local/etc/rc.d/apache22 start
Performing sanity check on apache22 configuration:
Syntax OK
Starting apache22.

6.2 测试
http://localhost/
—> 出现Apache的信息:It works!
http://localhost/
index.jsp —> 出现Tomcat欢迎页面
这样就说明Apache将JSP的处理交给了Tomcat进行了!

转自:http://blog.csdn.net/kahoho/archive/2009/09/07/4528544.aspx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  tomcat freebsd jsp