Ubuntu安装配置记4
apache和tomcat的整合,JSP由tomcat处理
apache和tomcat的整合,JSP由tomcat处理整合的方法我知道的有三种第一种是利用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-jdktomcat6-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
若这两个看到的内容相同,则tomcat与apache整合成功。也可以写一个简单的jsp网页进行测试, /var/lib/tomcat6/webapps/ROOT/目录下就存放网页的地方。(4)修改workers.properties文件,在/etc/lipapache2-mod-jk目录下
#sudo vim /etc/lipapache2-mod-jk/workers.properties
workers.tomcat_home=/usr/local/apache-tomcat-6.0.28/
workers.java_home=/usr/lib/jvm/java-6-sun-1.6.0.26
画线部分是修改后的内容,其余没有特殊要求时默认即可。
(5)修改/etc/tomcat6/server.xml,去掉下面这句的注释,使其生效。
AJP13协议使用的端口号是8009。(一般是去掉的请检查)
从这个语句中,就能看出运行tomcat6时要加的端口号是8080,即http://IP:8080
(6)apache的配置,修改文件,添加以下内容。
初次运行apache时,还要在/etc/apache2/httpd.conf添加以下内容:
ServerName YourIpAddress:80
cp httpd_example_apache2.conf/etc/apache2/mods-av~/jk.conf
vi /etc/apache2/mods-available/jk.conf
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
JkRequestLogFormat "%w %V %T"
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
# Assign specific URLs to Tomcat. In general the structure of a
# JkMount directive is: JkMount [URL prefix] [Worker name]
# send all requests ending in .jsp to ajp13_worker
JkMount /*.jsp ajp13_worker
# send all requests ending /servlet to ajp13_worker
JkMount /*/servlet/ ajp13_worker
# JkUnmount directive acts as an opposite to JkMount and blocks access
# to a particular URL. The purpose is to be able to filter out the
# particular content types from mounted context.
# do not send requests ending with .gif to ajp13_worker
#JkUnMount /servlet/*.gif ajp13_worker
# JkMount / JkUnMount directives can also be used inside <VirtualHost>
# sections of your httpd.conf file.
JkUnMount /*.jpg ajp13_worker
JkUnMount /*.gif ajp13_worker
JkUnMount /*.swf ajp13_worker
JkUnMount /*.bmp ajp13_worker
JkUnMount /*.png ajp13_worker
JkUnMount /servlet/*.gif ajp13_worker
(7)修改默认的apache主机default,添加以下内容
#sudo vim /etc/apache2/sites-available/default
……………………
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
JKMount /* ajp13_worker
</VirtualHost>
#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,所以访问时就是
测试tomcat测试Apache