前言:
说把tomcat与apache整合到一起,觉得有点别扭,因为tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,这里所说的"’整合'’就当apache接到请求执行jsp页面后,把请求转给tomcat去执行,正确配置后的效果就是Apache 为HTML页面服务,而Tomcat 运行JSP 页面和Servlet。
Tomcat与IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和 JSP容器,独立的Servlet容器是Tomcat的默认模式。因为Tomcat处理静态HTML的能力不如Apache服务器,所以要把它与apache整合。tomcat是初学者开发和调试JSP 程序的首选,它是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,官网是http://tomcat.apache.org/。
整合的方法我知道的有三种第一种是利用mod_proxy,第二种是ajp_proxy,第二种是mod_jk;我这里就用第三种方法使用mod_jk,在ubuntu 中使用的软件包是libapache2-mod-jk
在ubuntu server 10.4下做了快一个星期的实验都没成功,因为是个新手,以前只是听说过tomcat,但是没有配置过,所在一有空就在网上逛,搜寻这方面的东西,在REDHAT,CENTOS下的配置讲的很多,但在ubuntu server 下的很少,所以总结记录下来。
软件包:
(1)tomcat6,tomcat6-admin,tomcat6-docs,tomcat6-examples
(2)apache2,libapache2-mod_jk
(3)sun-java6-jdk(可选),但推荐使用。
操作步骤:
(1)安装tomcat6,tomcat6-admin,sun-java6-jdk,但为安装完后测试建议同进安装tomcat6-docs,tomcat6-examples实际应用可以不安装这些
sun-java6-jdk在默认的软件源里是没有的,所以在/etc/apt/sources.list加入以下源:
deb http://cz.archive.ubuntu.com/ubuntu karmic-updates main multiverse
如果安装sun-java5-jdk,则加入以下源
deb http://cz.archive.ubuntu.com/ubuntu dapper main multiverse
加入新的源后:更新软件源
#sudo apt-get update
#sudo apt-get install tomcat6 tomcat6-admin sun-java6-jdk tomcat6-docs tomcat6-examples
(2)安装libapache2-mod_jk
#sudo apt-get install libapache2-mod-jk
查看是否启用该模块
#ls /etc/apache2/mods-enabled
有jk.load,若是没有则用
#sudo a2enmod
启用该功能
安装完后,会在/etc下建立一个libapache2-mod-jk目录。
(3)安装apache2
#sudo apt-get install apache2
(4)修改workers.properties文件,在/etc/lipapache2-mod-jk目录下
#sudo vim /etc/lipapache2-mod-jk/workers.properties
画线部分是修改后的内容,其余没有特殊要求时默认即可。
(5)修改/etc/tomcat6/server.xml,去掉下面这句的注释,使其生效。
AJP13协议使用的端口号是8009。
另外:
从这个语句中,就能看出运行tomcat6时要加的端口号是8080,即http://IP:8080
(6)apache的配置,修改apache2.conf文件,添加以下内容。
#sudo vim /etc/apache2/apache2.conf
初次运行apache时,还需添加以下内容:
(7)修改默认的apache主机default,添加以下内容
#sudo vim /etc/apache2/sites-available/default
#sudo a2dissite default
#sudo a2ensite default
使配置生效。
(8)重启apache2,tomcat6服务
#sudo /etc/init.d/apache2 restart
#sudo /etc/init.d/tomcat6 restart
若没有提示错误信息,则配置没有错误,若有就要看提示进行修改。
(9)测试
我这台机器的IP是192.168.2.60,所以访问时就是
http://192.168.2.60:8080 测试tomcat
http://192.168.2.60 测试Apache
若这两个看到的内容相同,则tomcat与apache整合成功。也可以写一个简单的jsp网页进行测试。
/var/lib/tomcat6/webapps/ROOT/目录下就存放网页的地方。
结束语:
tomcat还可以做成集群,负载均衡等。因刚接触若博友发现错误,请指正。谢谢