服务器维护,服务器代维,安全设置,漏洞扫描,入侵检测服务

dirtysea 发表于 2010-4-8 15:06:02

JDK/Resin/Tomcat/Apache配置指南

Part I. JDK安装与测试
1>jdk安装:
$ chmod 777 jdk-6u3-linux-i586.bin
$ ./jdk-6u3-linux-i586.bin
$ mv jdk1.6.0_03/ /opt/jdk
2>环境变量设置
# vi /etc/profile.d/java.sh

# vi ~/.bashrc
------------------------------------------------------------------
export JAVA_HOME=/opt/jdk
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
------------------------------------------------------------------
# chmod 755 /etc/profile.d/java.sh
# . /etc/profile
# java -version
java version "1.6.0_03"
Java(TM) SE Runtime Environment (build 1.6.0_03-b05)
Java HotSpot(TM) Client VM (build 1.6.0_03-b05, mixed mode, sharing)
3>测试java程序
$ vi test.java
-------------------------------------------------
public class test {
public static void main(String args[]) {
System.out.println("Hello World!");
}
}
--------------------------------------------------
$ javac test.java
$ java test
Hello World!
Part II. Resin安装与配置
1>安装resion
$ tar xzvf resin-3.1.4.tar.gz
$ mv resin-3.1.4 /opt/resin/
$ cd /opt/resin/
$ ./configure --with-apache=/usr/local/apache2/
$ make
$ sudo make install
# mv /usr/local/apache2/modules/mod_caucho /usr/local/apache2/modules/mod_caucho.so
2>配置环境变量
# vi /etc/profile.d/resin.sh
-------------------------------
export RESIN_HOME=/opt/resin
-------------------------------
# . /etc/profile
# echo $RESIN_HOME
/opt/resin
3>配置resin开机启动
# cp contrib/init.resin /etc/init.d/resin
注释掉启动脚本中的关于环境变量的信息:
# vi /etc/init.d/resin
-----------------------------------------
#JAVA_HOME=/usr
#RESIN_HOME=/opt/resin
#export JAVA_HOME RESIN_HOME
-----------------------------------------
# chkconfig resin reset
# chkconfig --list resin
resin 0:off 1:off 2:off 3:on 4:on 5:on 6:off
Part III. TOMCAT基本配置
1>安装tomcat
$ tar xzvf apache-tomcat-6.0.14.tar.gz
$ sudo mv apache-tomcat-6.0.14 /opt/tomcat
2>测试tomcat
$ vi webapps/ROOT/hh.jsp
-----------------------------------
-----------------------------------
$ ./bin/startup.sh
firefox:
http://192.168.1.90:8080
http://192.168.1.90:8080/hh.jsp
3>配置tomcat WEB管理用户
$ vi conf/tomcat-users.xml
--------------------------------------------------------------------------








--------------------------------------------------------------------------
4>配置tomcat开机启动
安装启动daemon程序:
$ cd bin/
$ tar xzvf jsvc.tar.gz
$ cd jsvc-src/
$ sh support/buildconf.sh
support/buildconf.sh: configure script generated successfully
$ chmod 777 configure
$ ./configure --with-java=/opt/jdk/
注:此处configure时需要加上jdk路径,否则无法使用普通用户开机自动启动tomcat。
$ make
$ vi native/Tomcat5.sh
将启动脚本修改成:
-----------------------------------------------------------------------------------
#!/bin/sh
##############################################################################
#
# Copyright 2004 The Apache Software Foundation.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
##############################################################################
#
# Small shell script to show how to start/stop Tomcat using jsvc
# If you want to have Tomcat running on port 80 please modify the server.xml
# file:
#
#
#
#
# That is for Tomcat-5.0.x (Apache Tomcat/5.0)
# chkconfig: 2345 85 15
# description: apache-tomcat.6
#
# Adapt the following lines to your configuration
JAVA_HOME=/opt/jdk
CATALINA_HOME=/opt/tomcat
DAEMON_HOME=/opt/tomcat/bin
TOMCAT_USER=tomcat
# for multi instances adapt those lines.
TMP_DIR=/var/tmp
PID_FILE=/var/run/jsvc.pid
CATALINA_BASE=/opt/tomcat
#CATALINA_OPTS="-Djava.library.path=/home/jfclere/jakarta-tomcat-connectors/jni/native/.libs"
CATALINA_OPTS=
CLASSPATH=\
$JAVA_HOME/lib/tools.jar:\
$CATALINA_HOME/bin/commons-daemon.jar:\
$JAVA_HOME/lib/tools.jar:\
$CATALINA_HOME/bin/commons-daemon.jar:\
$CATALINA_HOME/bin/bootstrap.jar
case "$1" in
start)
#
# Start Tomcat
#
$DAEMON_HOME/jsvc-src/jsvc \
-user $TOMCAT_USER \
-home $JAVA_HOME \
-Dcatalina.home=$CATALINA_HOME \
-Dcatalina.base=$CATALINA_BASE \
-Djava.io.tmpdir=$TMP_DIR \
-wait 10 \
-pidfile $PID_FILE \
-outfile $CATALINA_HOME/logs/catalina.out \
-errfile '&1' \
$CATALINA_OPTS \
-cp $CLASSPATH \
org.apache.catalina.startup.Bootstrap
#
# To get a verbose JVM
#-verbose \
# To get a debug of jsvc.
#-debug \
exit $?
;;
stop)
#
# Stop Tomcat
#
$DAEMON_HOME/jsvc-src/jsvc \
-stop \
-pidfile $PID_FILE \
org.apache.catalina.startup.Bootstrap
exit $?
;;
*)
echo "Usage tomcat.sh start/stop"
exit 1;;
esac
-----------------------------------------------------------------------------------
$ sudo cp native/Tomcat5.sh /etc/init.d/tomcat
$ sudo chmod 755 /etc/init.d/tomcat
$ su -
# chkconfig tomcat reset
# chkconfig --list tomcat
tomcat 0:off 1:off 2:on 3:on 4:on 5:on 6:off
配置tomcat开机启动用户:
# groupadd tomcat
# useradd -g tomcat -s /sbin/nologin -d /dev/null tomcat
# chown -R tomcat:tomcat /opt/tomcat/
测试tomcat运行:
# service tomcat start
# netstat -tunlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:8000 0.0.0.0:* LISTEN 2233/nasd
tcp 0 0 192.168.1.90:53 0.0.0.0:* LISTEN 3586/named
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 3586/named
tcp 0 0 127.0.0.1:953 0.0.0.0:* LISTEN 3586/named
tcp 0 0 :::8009 :::* LISTEN 3898/jsvc.exec
tcp 0 0 :::8080 :::* LISTEN 3898/jsvc.exec
tcp 0 0 :::80 :::* LISTEN 32547/httpd
udp 0 0 0.0.0.0:33447 0.0.0.0:* 3586/named
udp 0 0 192.168.1.90:53 0.0.0.0:* 3586/named
udp 0 0 127.0.0.1:53 0.0.0.0:* 3586/named
udp 0 0 :::33448 :::* 3586/named
Part IV. tomcat与apache整合
1>安装mod_jk2
jk2模块通过httpd把jsp等的web请求转发给tomcat,实现不同的文件由不同的解释器解析。
http://archive.apache.org/dist/tomcat/tomcat-connectors/jk2/binaries/linux/
# tar xzvf Fedora-Core-1-i386
# cd Fedora-Core-1-i386
# cp etc/httpd/conf/workers2.properties /usr/local/apache2/conf
# cat etc/httpd/conf.d/jk2.conf
------------------------------------------------------------
#
# JK2 is the Apache/Tomcat connector
#
LoadModule jk2_module modules/mod_jk2.so
JkSet config.file /etc/httpd/conf/workers2.properties
------------------------------------------------------------
# vi /usr/local/apache2/conf/httpd.conf
将jk2.conf的内容加在此文件后。
# cp usr/lib/httpd/modules/* /usr/local/apache2/modules/
2>测试mod_jk2
$ cd /usr/local/apache2/
$ ./bin/apachectl -t
httpd: Syntax error on line 444 of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/modules/mod_jk2.so into server: /usr/local/apache2/modules/mod_jk2.so: undefined symbol: apr_pool_get_parent
出错提示mod_jk2.so与当前的apache不兼容,所以需要手工编译mod_jk2.so模块。
3>工手编译mod_jk2模块
到http://archive.apache.org/dist/t ... nectors/jk2/source/下载新版本的mod_jk2.so源代码。
$ tar xzvf jakarta-tomcat-connectors-jk2-2.0.4-src.tar.gz
$ cd jakarta-tomcat-connectors-jk2-2.0.4-src
$ cd jk/native2/
$ ./configure --with-apxs2=/usr/local/apache2/bin/apxs
$ make
$ cd ../build/jk2/apache2/
$ sudo cp mod_jk2.so /usr/local/apache2/modules/
4>测试新的mod_jk2
$ cd /usr/local/apache2/
$ ./bin/apachectl -t
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
Syntax OK
$ sudo ./bin/apachectl start
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
5>测试PHP/JSP文件
http://192.168.1.90/
http://192.168.1.90:8080/
页: [1]
查看完整版本: JDK/Resin/Tomcat/Apache配置指南