linux环境搭建Apache+Tomcat网站平台
Apache只是一个web服务器,并不能运行JSP程序。如果要运行JSP程序,还需要安装Tomcat服务器软件,通过连接器组件整合Tomcat与Apche。当用户请求访问*.jsp网页时,由Aapache自动调用tomcat服务进行解析,并将结果页面返回到客户端浏览器。
系统环境:
RHEL5,内核心版本号2.6.18-8.el5,已编译安装httpd服务器
所需软件:
apache-tomcat-6.0.18.tar.gz
jdk-6u13-linux-i586.bin
mod_jk-1.2.28-httpd-2.2.X.so
1、安装配置jdk开发环境
(1)安装
[root@server~]#mvjdk-6u13-linux-i586.bin/usr/bin/
[root@server~]#cd/usr/local/
[root@serverlocal]#chmoda+xjdk-6u13-linux-i586.bin
[root@serverlocal]#./jdk-6u13-linux-i586.bin
执行jdk安装程序后将会显示软件许可协议,按回车或空格至末尾,按照提示输入“yes”回车确认,等待1~2分钟左右即可完成安装。
(2)为jdk的安装目录及执行程序创建链接文件,以方便使用。
[root@server~]#ln-sf/usr/local/jdk1.6.0_13/usr/local/jdk6
[root@server~]#ln-sf/usr/local/jdk6/bin/java/usr/bin/
[root@server~]#ln-sf/usr/local/jdk6/bin/javac/usr/bin/
修改/etc/profile文件,添加JAVA开发环境需要的变量设置。
[root@server~]#vi/etc/profile
JAVA_HOME=/usr/local/jdk6
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/bin:$PATH
exportJAVA_HOMECLASSPATHPATH
[root@server~]#source/etc/profile
(3)测试
查看安装的jdk程序版本信息。
javaversion"1.6.0_13"
Java(TM)SERuntimeEnvironment(build1.6.0_13-b03)
JavaHotSpot(TM)ClientVM(build11.3-b02,mixedmode,sharing)
编写一个java测试小程序,并编译执行。
publicclassHelloWorld{
publicstaticvoidmain(Stringargs[]){
System.out.println("HelloWorld!!");
}
}
[root@server~]#javacHelloWorld.java//编译程序
[root@server~]#javaHelloWorld//运行HelloWorld.class程序
HelloWorld!!//显示运行结果
2、安装配置Tomcat
(1)安装。
Tomcat的安装过程非常简单,只要将源码包解压至目的文件夹即可。
[root@server~]#tarzxvfapache-tomcat-6.0.18.tar.gz-C/usr/local/
(2)配置。
①为Tomcat的安装目录及启动、关闭服务的脚本创建链接文件,方便使用。
[root@server~]#ln-sf/usr/local/apache-tomcat-6.0.18/usr/local/tomcat
[root@server~]#ln-sf/usr/local/tomcat/bin/startup.sh/usr/bin/tomcat-up
[root@server~]#ln-sf/usr/local/tomcat/bin/shutdown.sh/usr/bin/tomcat-down
②修改/etc/profile文件,设置Tomcat服务需要使用的变量CATALINA_HOME。
[root@server~]#vi/etc/profile//结合第一步,确认有如下内容:
JAVA_HOME=/usr/local/jdk6
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$CATALINA_HOME/lib/servlet-api.jar
PATH=$JAVA_HOME/bin:$PATH
exportJAVA_HOMECACTALINA_HOMECLASSPATHPATH
[root@server~]#source/etc/profile//执行profile文件使新配置生效
③修改tomcat-users.xml文件,添加管理员账户“benet”设置。
[root@server~]#vi/usr/local/tomcat/conf/tomcat-users.xml
<?xmlversion='1.0'encoding='utf-8'?>
<tomcat-users>
<userusername="benet"password="benet3.0"roles="manager,admin"/>
</tomcat-users>
(3)测试。
①启动Tomcat服务,并确认Tomcat服务的监听状态。
[root@server~]#tomcat-up
UsingCATALINA_BASE:/usr/local/tomcat
UsingCATALINA_HOME:/usr/local/tomcat
UsingCATALINA_TMPDIR:/usr/local/tomcat/temp
UsingJRE_HOME:/usr/local/jdk6
[root@server~]#netstat-anpt|grepjava
tcp00:::8009:::*LISTEN7399/java
tcp00:::8080:::*LISTEN7399/java
②访问http://192.168.0.10:8080,可以看到Tomcat的web首页(如下图所示)
③通过单击“TomacatManager”链接可以登录后对Tomcat进行管理(如下图所示)
③如需停止Tomcat服务,可执行“tomcat-down”。
3、将Tomcat服务与Aptech服务进行连接
虽然Tomcat可以独立作为Web服务器运行,但是Tomcat的Web功能远没有Apache强大。在实际应用中,通过mod_jdk连接器(Connectors)将Apache和Tomcat整合在一起。调用Tomcat服务的工作由Apache来完成,而用户只需要访问Apache服务。
(1)安装mod_jdk模块。
[root@server~]#cpmod_jk-1.2.28-httpd-2.2.X.so/usr/local/apache2/modules
(2)调整Apache服务、Tomcat服务的相关配置,并重启tomcat、httpd服务。
①修改http.conf配置文件,添加jdk调用配置。
[root@server~]#vi/usr/local/apache2/conf/httpd.conf
...
ServerNamewww.benet.com
DocumentRoot"/usr/local/apache2/htdocs"
...
LoadModulejk_modulemodules/mod_jk-1.2.28-httpd-2.2.X.so
JkWorkersFileconf/workers.properties
JkLogFilelogs/mod_jk.log
JkShmFilelogs/mod_jk.shm
JkLogLevelnotice
JkMount/*/*.jspbenet
JkMountCopyAll
AddTypeapplication/x-jsp.jsp
②添加tomcat配置文件,并建立Web应用目录链接
[root@server~]#vi/usr/local/apache2/conf/workers.properties
worker.list=benet
worker.benet.port=8009
worker.benet.host=localhost
worker.benet.type=ajp13
worker.benet.lbfactor=1
[root@server~]#cd/usr/local/tomcat
[root@servertomcat]#mvwebappswebapps.bak
[root@servertomcat]#ln-sf/usr/local/apache2/htdocswebapps
③重启apache和tomcat服务。
[root@server~]#tomcat-down;/usr/bin/tomcat-up
[root@server~]#/usr/local/apache2/bin/apachectlrestart
(3)测试
①创建显示系统时间的JSP测试网页。
[root@server~]#mkdir/usr/local/apache2/htdocs/apps/
[root@server~]#vi/usr/local/apache2/htdocs/apps/showtime.jsp
<%@pagelanguage="java"import="java.util.*"%>
Now,thetime&dateis:<%out.println(newDate());%>
②http://192.168.0.10/apps/showtime.jsp,应在网页中显示当前的系统时间(如下图所示)