安装Tomcat服务器,开发JSP我假设你使用Debian3,如果你使用其他的Linux版,可能会有安装方法和设置路径上的区别。 1,安装J2SDK1.1 使用Debian源里的安装包 以root 身份运行apt-get install sun-j2sdk1.4,这样将安装sun的j2sdk1.4。然后输入java如果你看到的不是command not found,就表示你已经安装正确了。否则搜索是否有java和javac两个文件,我的在/usr/lib/j2sdk1.4-sun/bin下,如果有就创建链接到/usr/bin下,连接名与原文件名一样。 1.2 使用sun网站上的安装包 具体方法参考sun网站上的安装说明。也可以参考我的做法(图形界面操作): 下载正确的压缩包后解压,一般得到类似名为jdk1.x.x的文件夹。将整个文件夹移动到/usr/lib目录下,然后进入 jdk.1.x.x/bin下的java, javac, javadoc, jar四个可执行文件创建链接,然后复制到/usr/bin文件夹下,并且改名为与原文件相同。这样做的原因是一般/usr/bin是$PATH环境变量的一部分,以后你想运行javac命令编绎一个.java源文件时,只需要输入javac filename就行了,而不需要输入javac文件所在的完整路径。 JAVA_HOME环境变量可以不设置,因为据我的使用经验,java,javac等jdk的程序知道在哪里找到自己的家。当某个程序需要JAVA_HOME环境变量,我们再在它的启动脚本中设置。因为使用JAVA_HOME环境变量的程序很少。 2,安装Tomcat从http://tomcat.apache.org/网站上下载tomcat for Linux。网站上有不同版本的源码包和二进制包等,而二进制包又有core,deployer,embedded三种。我使用tomcat5.28二进制包中的core。 下载jakarta-tomcat-5.0.28.tar.gz解压,将得到jakarta-tomcat-5.0.28文件夹,我把它改名为tomcat5,把它拷贝到你喜欢的地方。我放在/usr/share/下。 2.1 试运行tomcat 在终端中输入/usr/share/tomcat5/bin/startup.sh,将启动tomcat。然后你在浏览器中输入http://localhost:8080或者http://127.0.0.1:8080你就看到tomcat产生的页面了。 运行/usr/share/tomcat5/bin/startup.sh出错?试运行: JAVA_HOME=/usr/lib/j2sdk1.4_sun #这里的路径是你的j2sdk的安装路径 export JAVA_HOME /usr/share/tomcat5/bin/startup.sh2.2 将tomcat设置为开机启动 有两个方法,1是使用tomcat自带的启动脚本启动,2是使用jsvc将tomcat启动为Linux的一个进程。 2.2.1 使用Tomcat自带的启动脚本 建立一个脚本命名为tomcat5.sh,内容为: #!/bin/sh #file:tomcat5.sh #设置环境变量,如果无法启动就将注释去掉 #JAVA_HOME=/usr/lib/j2sdk1.4-sun #CATALINA_HOME=/usr/share/tomcat5 #CLASSPATH=\ #$JAVA_HOME/lib/tools.jar:\ #$CATALINA_HOME/bin/commons-daemon.jar:\ #$CATALINA_HOME/bin/bootstrap.jar case "$1" in start) echo "Starting tomcat5..." /usr/tomcat5/bin/startup.sh ;; stop) echo "Stopping tomcat5..." /usr/tomcat5/bin/shutdown.sh ;; *) echo "Usage tomcat.sh start/stop" exit 1;; esac #tomcat5.sh end 将tomcat5.sh 拷贝到/etc/init.d下面。然后运行/usr/bin/ksysv运行图形界面的开机启动设置工具。将Available Services栏里的tomcat5.sh拖到Runlever 2 Start,Runlever 3 Start,Runlever 4 Start,Runlever 5 Start,Runlever 6 Start,Runlever 0 Stop,Runlever 1 Stop,Runlever 6 Stop,你可能需要注意图标的位置,我将图标拖到每一栏的启动项目标号是90的位置。 或者你在终端里运行: ln -s /etc/init.d/tomcat5.sh /etc/rc0.d/K90tomcat5.sh ln -s /etc/init.d/tomcat5.sh /etc/rc1.d/K90tomcat5.sh ln -s /etc/init.d/tomcat5.sh /etc/rc2.d/S90tomcat5.sh ln -s /etc/init.d/tomcat5.sh /etc/rc3.d/S90tomcat5.sh ln -s /etc/init.d/tomcat5.sh /etc/rc4.d/S90tomcat5.sh ln -s /etc/init.d/tomcat5.sh /etc/rc5.d/S90tomcat5.sh ln -s /etc/init.d/tomcat5.sh /etc/rc6.d/K95tomcat5.sh 重启机器看tomcat是否可以自动启动了。 2.2.2 使用jsvc,增加安全性 方法2.2.1有一个严重的问题,那就是tomcat具有root权限。我意味着你的任何一个jsp脚本都具有root权限,所以可以轻易地用jsp脚本删除你整个硬盘里的东西!所以我们最好不要使用2.2.1方法。 我们下载的jakarta-tomcat-5.0.28.tar.gz带有jsvc工具,在压缩包里的jakarta-tomcat- 5.0.28/bin/jsvc.tar.gz,如果你按上面的步骤做了,它就在 /usr/share/tomcat5/bin/jsvc.tar.gz,将其解压,得到/usr/share/tomcat5/bin/jsvc- src文件夹。在终端运行: /usr/share/tomcat5/bin/jsvc-src/configure --with-java=/usr/lib/j2sdk1.4-sun make 得到/usr/share/tomcat5/bin/jsvc-src/jsvc文件。将/usr/share/tomcat5/bin/jsvc- src/native/tomcat5.sh脚本文件拷贝到/etc/init.d下,再使用2.2.1中的的半部分方法将tomcat设置为自启动。 /etc/init.d/tomcat5.sh还需要修改,使其看起来像: JAVA_HOME=/usr/lib/j2sdk1.4-sun CATALINA_HOME=/usr/share/tomcat5 DAEMON_HOME=/usr/share/tomcat5 TOMCAT_USER=tomcat5 #这里改为一个普通身份的用户名 TMP_DIR=/var/tmp CATALINA_OPTS= CLASSPATH=\ $JAVA_HOME/lib/tools.jar:\ $CATALINA_HOME/bin/commons-daemon.jar:\ $CATALINA_HOME/bin/bootstrap.jar case "$1" in start) # # Start Tomcat # $DAEMON_HOME/bin/jsvc-src/jsvc \ ...... 先不要重启试验,请手动运行/etc/init.d/tomcat5.sh start,然后在浏览器中输入http://localhost:8080或者http://127.0.0.1:8080看tomcat是否能够启动,再运行/etc/init.d/tomcat5.sh stop看是否能停止。 问题:无法用jsvc启动tomcat?
在http: //jakarta.apache.org/commons/daemon/faq.html有说明。如果你使用Debian,运行modconf然后将 /kernel/security下的capability模块安装上。如果你使用其它的版本,并且把capability编绎为模块,请在 /etc/init.d/tomcat5.sh的合适位置(你想使用第2行?)加上modprobe capability。 上一篇:Linux下Patch的应用和制作方法介绍 下一篇:技巧:Vimdiff 使用 更多相关文章
|
推荐文章
精彩文章
|