Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103179839
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: LINUX

2008-05-25 14:33:16

 
一、环境准备于介绍:
 
1.假设您已经成功设置系统的Java运行开发环境,包括JDK的安装,JAVA_HOME,PATH,CLASSPATH等等环境变量的设置。
 
2.Apache web服务器[版本不限]
 
3.Jakarta-Tomcat[目前推荐版本:5.0.16-5.0.28之间]
 
4.jk2连接器(jakarta-tomcat-connectors-jk2-src-current.tar.gz)[下载地址:]
 
二、Apache安装:
 
1.从apache.org下载httpd-2.0.52.tar.gz后解压缩得文件夹httpd-2.0.52。
 
2.进入httpd-2.0.52/bin目录,运行
 
./configure -prefix=/usr/local/apache -enable-so
 
-prefix指定安装目录,-enable-so用于加载jk2连接器,此项必须。
 
3.make,make install,这没的说。
 
4./usr/local/apache/apachectl start,然后用浏览器访问一下localhost,应该成功了吧!
 
三、Tomcat安装:
 
这个不用说了吧?Java环境搭建好,随便找个地方解压,$TOMCAT_HOME/bin/startup.sh一下,看看8080端口,应该错不了。
 
四、jk2的编译和加载
 
1.解压jakarta-tomcat-connectors-jk2-src-current.tar.gz得到目录jakarta-tomcat-connectors-jk2-src-current,进入目录jakarta-tomcat-connectors-jk2-src-current/jk/native2,运行
./configure --with-apxs2=/usr/local/apache/bin/apxs (注意你的apache安装目录),然后make之。
 
2.等到make完毕以后,你会发现多了一个jakarta-tomcat-connectors-jk2-src-current/jk/build目录,进入jakarta-tomcat-connectors-jk2-src-current/jk/build/jk2/apache2,执行/usr/local/apache/bin/apxs -n jk2 -i mod_jk2.so,之后你会发现mod_jk2.so文件已经存在于/usr/local/apache/modules/中了。
 
3.在你的apache/conf/httpd.conf最下面加上一行
LoadModule jk2_module modules/mod_jk2.so
 
4.在apache/conf/中新建文件workers2.properties,其内容如下:
 
[logger.apache2]
level=DEBUG
[shm]
file=/usr/local/apache2/logs/shm.file
size=1048576
# Example socket channel, override port and host.
[channel.socket:localhost:8009]
port=8009
host=127.0.0.1
# define the worker
[ajp13:localhost:8009]
channel=channel.socket:localhost:8009
# Uri mapping
[uri:/*]
worker=ajp13:localhost:8009
 
此时启动apache于tomcat,访问localhost的80端口,看到了tomcat的欢迎页面,试着访问tomcat的jsp/servelt-examples,也能运行成功,祝贺您,您已经初步成功。请继续往下进行。
 
五、其他配置
 
上面的配置感觉就是把tomcat的8009端口的服务通过ajp13转给了apache,真没意思,我们想要的是jsp才交给tomcat处理,这个简单,我们继续:
 
假设你的apache的页面根目录为/var/www,我们首先来更改tomcat的server配置,把一个webapp放到/var/www:在/var/www下面按照web application的那套规范建立WEB-INF,web.xml,calsses,lib等等目录和文件,之后修改$TOMCAT_HOME/conf/server.xml,在元素之间加入一个context元素:
< Context path="" docBase="/var/www" debug="0" reloadable="true" crossContext="true">
< /Context>
修改workers2.properties
 
# Uri mapping
[uri:/*]
worker=ajp13:localhost:8009
修改为:
# Uri mapping
[uri:/*.jsp]
worker=ajp13:localhost:8009
 
现在好了,apache只有碰到jsp页面的时候才去请求tomcat的8009,而且我们作的东西扔进/var/www这个webapp就好了。
 
提示:
1.apache服务器可以让用户目录下的public_html文件夹得到web访问,为了让这些用户也得到jsp的支持,你可以为每个用户添加一个context到tomcat的server.xml中。其中path="/~username" docBase="/home/username/public_html"。其他和刚才添加的哪个context相同。
 
2.worker2.properties文件中的
 
# Uri mapping
[uri:/*.jsp]
worker=ajp13:localhost:8009
 
很有意思,如果你使用spring,struts等等framework并进行了自定义后缀,把相应的后缀加进去就可以了,apache会把这里定义的访问形式统统交给tomcat处理。
 
 
来自: 新客网() 详文参考:
阅读(286) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~