Apache与Tomcat的整合

  1. 案例需求
  1. 为Apache HTTP Server服务器添加JSP网页支持。
  2. 能够访问Tomcat容器的Web管理界面,以便管理各种JSP、Servelet应用。
  1. 知识提示

在各种企业级网站应用系统中,JSP也是使用较多的一种网站开发语言,对于这样的网站服务器,必须能够支持Java环境、JSP解析,比如安装Tomcat、Jboss等JSP容器。另外一方面,Apache HTTP Server对静态HTML页面的处理能力要更加优秀一些,因此若能将Apache与Tomcat等JSP容器整合在一起使用,将可以获得更好的网站服务体验。

这种情况下,Apache仍然作为浏览器访问的前端服务,当客户机请求访问*.jsp网页时,再自动调用后端的tomcat服务进行解析,并将结果页面返回给客户机。其间的沟通过程需要安装连接器mod_jk来完成。

  1. 参考答案

一、安装并配置jdk开发环境

1.安装

[root@localhost ~]# cp /var/ftp/pub/jdk-6u20-linux-i586.bin /usr/local/

[root@localhost ~]# cd /usr/local/

[root@localhost local]# chmod a+x jdk-6u20-linux-i586.bin

[root@localhost local]# ./jdk-6u20-linux-i586.bin

执行jdk安装程序后将会显示软件许可协议,按回车或空格键翻页至末尾,按照提示输入“yes”回车确认,等待1~2分钟左右即可完成安装。

2.配置

(1)为jdk的安装目录及执行程序创建链接文件,以方便使用。

[root@localhost ~]# alternatives --install /usr/bin/java java /usr/local/jdk1.6.0_20/bin/java 1

[root@localhost ~]# alternatives --install /usr/bin/javac javac /usr/local/jdk1.6.0_20/bin/javac 1

[root@localhost ~]# alternatives --config java

共有 2 个程序提供“java”。

  选择    命令

-----------------------------------------------

*+ 1           /usr/lib/jvm/jre-1.4.2-gcj/bin/java

   2           /usr/local/jdk1.6.0_20/bin/java

按 Enter 来保存当前选择[+],或键入选择号码:2

[root@localhost ~]# alternatives --config javac

共有 1 个程序提供“javac”。

  选择    命令

-----------------------------------------------

*  1           /usr/local/jdk1.6.0_20/bin/javac

按 Enter 来保存当前选择[+],或键入选择号码:1

(2)修改/etc/profile文件,添加Java开发环境需要的变量设置。

[root@localhost ~]# vi /etc/profile

…… //省略部分内容

JAVA_HOME=/usr/local/jdk1.6.0_20

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

PATH=$JAVA_HOME/bin:$PATH

export JAVA_HOME CLASSPATH PATH

[root@localhost ~]# source /etc/profile

3.测试

(1)查看安装的jdk程序版本信息。

[root@localhost ~]# java -version

java version "1.6.0_20"

Java(TM) SE Runtime Environment (build 1.6.0_20-b02)

Java HotSpot(TM) Client VM (build 16.3-b01, mixed mode, sharing)

(2)编写一个java测试小程序,并编译执行。

[root@localhost ~]# vi HelloWorld.java

public class HelloWorld {

    public static void main(String args[]) {

        System.out.println("HelloWorld!!");

    }

}

[root@localhost ~]# javac HelloWorld.java               //编译程序

[root@localhost ~]# java HelloWorld                    //运行HelloWorld.class程序

HelloWorld!!                                        //显示运行结果

二、安装并配置Tomcat容器

1.安装

Tomcat的安装过程非常简单,只需要将源码包解压至目的文件夹即可。

[root@localhost ~]# tar zxf apache-tomcat-7.0.23.tar.gz

[root@localhost ~]# mv apache-tomcat-7.0.23 /usr/local/tomcat

2.配置

(1)为Tomcat的安装目录及启动、关闭服务的脚本创建链接文件,方便使用。

[root@localhost ~]# ln -s /usr/local/tomcat/bin/startup.sh /usr/local/sbin/tomcat-up

[root@localhost ~]# ln -s /usr/local/tomcat/bin/shudown.sh /usr/local/sbin/tomcat-down

(2)修改/etc/profile文件,设置Tomcat服务需要使用的变量CACTLINA_HOME。

[root@localhost ~]# vi /etc/profile                                            //修订原有的JDK环境

…… //省略部分内容

JAVA_HOME=/usr/local/jdk1.6.0_20

CATALINA_HOME=/usr/local/tomcat

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$CATALINA_HOME/lib/servlet-api.jar

PATH=$JAVA_HOME/bin:$PATH

export JAVA_HOME CATALINA_HOME CLASSPATH PATH

[root@localhost ~]# source /etc/profile

(3)修改tomcat-users.xml文件,添加管理员帐户“benet”设置。

[root@localhost ~]# vi /usr/local/tomcat/conf/tomcat-users.xml

<?xml version='1.0' encoding='utf-8'?>

<tomcat-users>

  <role rolename="manager-gui"/>

  <user username="tcadm" password="pwd123" roles="manager-gui"/>

</tomcat-users>

3.测试

(1)启动tomcat服务,并确认tomcat服务的监听状态。

[root@localhost ~]# tomcat-up

Using CATALINA_BASE:   /usr/local/tomcat

Using CATALINA_HOME:   /usr/local/tomcat

Using CATALINA_TMPDIR: /usr/local/tomcat/temp

Using JRE_HOME:        /usr/local/jdk1.6.0_20

Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar

[root@localhost ~]# netstat -anpt | grep java

tcp        0      0 :::8009        :::*          LISTEN      2591/java

tcp        0      0 :::8080        :::*          LISTEN      2591/java

(2)访问http://your_server_ip:8080/ ,可以看到tomcat的Web首页(如图1所示)。

1 Tomcat 7.0的Web首页

(3)通过“Manager App”按钮可以经登录后对Tomcat进行管理(如图2所示)。

2 对Tomcat 7.0进行管理

(4)如需停止tomcat服务,可执行“tomcat-down”。

三、将Tomcat服务与Apache服务进行连接

1.安装mod_jk模块。

[root@localhost ~]# cp mod_jk-1.2.31-httpd-2.2.x.so /usr/local/httpd/modules/

2.调整Apache服务、Tomcat服务的相关配置。

(1)修改httpd.conf配置文件,添加jdk调用设置。

[root@localhost ~]# vi /usr/local/httpd/conf/httpd.conf

…… //省略部分内容

DocumentRoot "/usr/local/httpd/htdocs"

…… //省略部分内容

LoadModule jk_module modules/mod_jk-1.2.28-httpd-2.2.X.so

JkWorkersFile conf/workers.properties

JkLogFile logs/mod_jk.log

JkShmFile logs/mod_jk.shm

JkLogLevel notice

JkMount /*/*.jsp benet

JkMountCopy All

AddType application/x-jsp .jsp

(2)添加tomcat配置文件,并建立Web应用目录链接。

[root@localhost ~]# vi /usr/local/httpd/conf/workers.properties

worker.list=benet

worker.benet.port=8009

worker.benet.host=localhost

worker.benet.type=ajp13

worker.benet.lbfactor=1

[root@localhost ~]# cd /usr/local/tomcat/

[root@localhost tomcat]# mv webapps webapps.origin

[root@localhost tomcat]# ln -sf /usr/local/httpd/htdocs/webapps

(3)重启apache和tomcat服务

[root@localhost tomcat]# tomcat-down ; tomcat-up

[root@localhost tomcat]# /usr/local/httpd/bin/apachectl restart

3.部署JSP应用目录

将JSP应用上传到Apache的网页根目录下(如/apps/),并链接到Tomcat的webaaps/。本例中将创建一个JSP测试网页showtime.asp,用来输出系统时间。

[root@localhost ~]# mkdir /usr/local/httpd/htdocs/apps/

[root@localhost ~]# vi /usr/local/httpd/htdocs/apps/showtime.jsp

<%@page language="java" import="java.util.*" %>

<h2>Now, the time&date is: <%out.println(new Date());%></h2>

[root@localhost ~]# ln -s /usr/local/httpd/htdocs/apps  /usr/local/tomcat/webapps/

4.访问http://www.benet.com/apps/showtime.jsp 进行测试

网页中应正常输出提示信息机当前的系统时间(如图3所示)。

 

3 JSP测试网页的显示结果

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值