Linux下搭建JSP环境<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
作为一名Java EE系统架构工程师,经常需要搭配和建立JSP(Java Server Pages)的开发环境和运行环境,本人在平时的工作中积累了一些在Linux下搭配JSP环境的经验.搭配环境所涉及的步骤比较繁杂,将其整理出来与大家一起分享.希望能起到抛砖引玉的作用,各位高手也多提宝贵意见.
一、JSP与Sewlet
在开始具体的操作之前,需要大家了解一下JSP程序与Servlet容器之间的关系,这样可以更好地理解JSP环境的搭配原理.JSP是由Sun公司倡导、许多公司参与一起建立的一种动态网页技术标准.JSP技术是用Java语言作为脚本语言.JSP网页为整个服务器端的Java库单元提供了一个接口来服务于HTTP的应用程序.Apache做为最流行的web服务器功能强大,高效,但并不支持jsp及servlet,通常的做法是把它们整合起来,让Apache处理静态页面,而把动态页面的请求交给 tomcat处理,发挥各自的优势.
由此可以看出,JSP的主要作用是对服务器端的Java程序提供接口, 以便进行HTTP的交互.而要实现这种接口就要有一个处理JSP脚本的容器,更进一步,知道所有JSP脚本在运行时刻,都会被编译成Servlet,要处理JSP的容器就是--Servlet容器.现在世界上比较常用的Servlet容器主要有两种,一种是Apache基金会的Tomcat,另外一种是Jetty.相比较而言两者在Servlet处理上不分伯仲, 但笔者更倾向于选择TomCat, Tomcat与Apache的HTTP服务器相结合可以大大提高网站的访问承受能力,而Jetty就比较单纯的是一个Servlet容器而已.
二、配置JSP环境
1.下载Apache
现在明白了JSP环境的搭配原理,就可以开始正式的搭配工作.要做的是配置好Apache,可以去http://httpd.apache.org下载一个最新版本的Apache服务器.目前适合Linux下的最新版本是UnixSource,httpd-2.3.2.tar.gz.下载完后就可以开始编译和安装.进入到下载的软件包所在目录,执行以下命令:
$tar zxvf httpd-2.3.2.tar.gz
然后进入解压缩后的目录:
$cd httpd-2.3.2
2.编译和安装
$ ./configure --prefix=usr/local/apache --enable-module=s --enable-module=rewrite --enable-shared=max --htdocsdir=/var/www &&make && make install
需要注意的是,所有命令都需要写在一行里面.
这里通过enable-module参数告诉设置脚本,需要启动so和rewrite模块,so模块是用来提DSO支持的Apache核心模块,而rewrite模块则是用意实现地址重写的模块,rewrite模块需要DBM支持,如果在初次安装时没有编译进Apache.以后需要用到时需要重新编译整个Apache才可以实现.如果不能确定以后不会用到rewrite模块,还是建议在第一次编译的时候把rewrite模块编译好.enable-shared=max这个参数的作用时编译Apache时,把除了so以外的所有Apache的标准模块都编译成DSO模块,而不是编译进Apache核心内.安装Apache很简单,
启动Apache:
$/usr/local/apache/bin/apachectl start
然后用IE看“HTTP://IP”,此时应该能看到熟悉的Apache羽毛标志.
3.安装Tomcat
以上的工作完成了Apache的安装,下面就需要安装Tom-cat了.Tomcat需要在http://tomcat.apache.org进行下载,最新的版本是6.0.20.Tomcat下载后不需要编译,只需要解压出来就可以使用.
使用命令解压:
$tar zxvf apache-tomcat-6.0.20.tar.gz
把解压缩后的目录放人,opt目录下并改名,以方便管理.
$mv apache-tomcat-6.0.20 /opt/tomcat
至此,Tomcat也就安装完毕了,要实现Tomcat和Apache的结台,还需要一个JK包,进入http://tomcat.apache.org/connectors-doc/下载最新版本的JK,最新版本号是1.2.28.下载后的文件是已经编译好的Apache模块,只需要把这个模块放人Apache的模块目录即可.
$mv jakarta-tomcat-connectors-jk-1.2.28-linux-sles9-x86_64-worker.so /usr/local/apache/modules/
|