Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->Linux技术 ->系统管理 ->正文

在Linux上搭建WEB服务器:JSP

来源:Linux-cn.com 作者:Webmaster 时间:2007-05-05 点击: [收藏] [投稿]

  JSP相对于PHP来说,可能运行得更快,消耗系统资源更少,功能更为强大——例如对分布式处理和组件支持等等。JSP技术在国外已经相当普及,而在国内,只不过还是刚热起来而已……虽然现在ASP+在性能上给JSP带来严峻的挑战,但它作为微软以外的一个选择,又支持多平台,所以还是很多网站所采用的首选。在这一部分里,我们将讲解三种不同的JSP集成方案,代表着三种典型的应用范围。

三、Linux+Apache+PHP+JSP的Resin解决方案

  首先向大家推荐的是Resin。Resin是快速的、容易配置和实施的、使用简单的JSP/Servlet引擎和Web服务器。这一点完全是无庸置疑的,无论是在windows平台还是在UNIX/Linux平台。然而目前的Resin 1.3 还不是一个应用服务器。不过Resin 2.0版有望取得很大的突破。因为它将包含一些最新的J2EE特性。Resin在JSP tags、XML解析等方面投入都比较早,现在也是处于比较领先的地位。而apache.org的tomcat更象是一个开发研究的产品。如果让我来做一个网站,RESIN肯定是我的首选——相信泛舟也是如此认为的。

  我们将在Linux+Apache+PHP的WEB服务解决方案中加入JSP的支持,这也许是您升级网站的需要。就算你不需要PHP也没有关系,下面我也会讲解如何做到这一点。

1、软件包的获取

  JDK是所有支持JSP环境所必须的,可以从http://java.sun.com获得它for linux的最新版本,现在好象是JSDK v1.3。

  Resin可以从它的老家http://www.caucho.com获得它的最新版本。在5月初的时候它的最新稳定版是1.2.5。

  至于apache什么的,请参考上一节有关内容。

2、安装JDK

  在安装Resin前,最好先安装好JDK,如果是下载的rpm包的话,可以使用

rpm -Uvh java_version.rpm

  如果是下载的GNU压缩包的话,直接解压就可以了。

  别忘了确认java运行所需要的一些基本设置,可能包括PATH、JAVA_HOME、CLASSPATH,例如可以把这些行加入/etc/profile文件里:


PATH=/usr/local/bin:/usr/bin:/bin:/usr/java/bin
export PATH

JAVA_HOME=/usr/java
export JAVA_HOME

CLASSPATH=/usr/java/lib/tools.jar
export CLASSPATH

  具体请参考java.sun.com对相应版本的安装说明。

3、Resin对apache的要求

  Resin可以为apache提供一个快速的servlet运行环境,允许apache处理servlets和JSP文件。但是它需要Apache的版本为1.3.x和DSO(Dynamic Shared Object,动态共享对象)的支持。所以在我们前一节中apache的编译选项中,需要添加一条--enable-module=so。如果我们并不需要PHP的支持的话,可以直接使用类似如下的方法编译apache:


linux> ./configure --prefix=/usr/local/apache 
--enable-module=so
linux> make
linux> make install

4、编译mod_caucho.so

  为了要编译mod_caucho.so,你需要先运行configure后才使用make。这一步将生成mod_caucho.so并把它放在Apache的module目录里。按照我们在第二节中的设置,mod_caucho.so将在/server/apache/libexec的目录下,否则一般都会被编译成/usr/local/apache/libexec/mod_caucho.so。


linux> ./configure --with-apache=/server/apache 
如果是按照前一步举例中的方法把apache的安装目录设置为了
/usr/local/apache,那么,请修改这里apache的目录。
linux> make
linux> make install

  这样你就已经可以了。但是假如你知道apxs的位置的话,你也可以使用如下方法来编译:


linux> ./configure --with-apxs=/usr/local/apache/bin/apxs
linux> make

  apxs是一个apache安装配置时生成的一个小小的perl脚本。它可以使象resin这种模块获得apache所有的配置路径。你应该可以用whereis apxs获得它的位置。

  如果你对配置选项需要更全面细致的定制的话,你还可以使用 ./configure的如下参数,例如apache-include, apache-libexec和apache-conf,下面是对它们的说明:


--with-apache=dir  //Apache的根路径,也就是prefix指定的安装目录  
--with-apxs=apxs   //指向Apache的扩展脚本  
--with-apache-include=dir  //Apache包含文件所在的目录  
--with-apache-libexec=dir  //Apache模块所在的目录  
--with-apache-conf=httpd.conf  //Apache的配置文件  

5、设置环境变量

  我们已经完成了JDK的安装与环境设置,但还需要对resin进行环境设置。下面是一个典型的配置,需要你手动加入~/.profile或者/etc/profile文件中。


# Resin的安装路径。通常情况下Resin都在这样的目录下:
RESIN_HOME=/<installdir>/resin1.2
export RESIN_HOME
# 假如你使用了扩展类库,你需要把它加入到classpath中,
# 最典型的可能是JDBC的驱动程序了
CLASSPATH=$CLASSPATH:<JDBC_DIR> 

6、配置resin.conf

  缺省的,Resin将在resin1.2/doc目录下寻找JSP文件,在resin1.2/doc/WEB-INF/classes寻找servlets和beans。为了要让Resin使用Apache的发布文档目录(也就是我们发布WWW服务的根,在这里是/var/www/),我们需要配置app-dir。把app-dir从“doc”修改为/var/www或者你指定的WWW发布文档的根。下面是一个典型的resin.conf文件。

 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:在Linux上搭建WEB服务器:基本概念、PHP   下一篇:在Linux上搭建WEB服务器:虚拟主机、SSL、管理

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号