tomcat是什么--->能够兼容jee运行的平台,可以作为JSP服务器解析JSP网页;
tomcat兼容的API库servlet API,JSP API,JMDI(用于与LDAP服务交互的API),JAXP(用于分析及转换XML);但是jee的核心API JMS,JMX,JTA等都没有兼容。
Apache + Mod_JK + tomcat
apache就不安装了,使用tomcat自带的web功能。
安装Mod_JK
[root@station83 ~]# chmod +x jdk-6u30-linux-i586.bin
[root@station83 ~]# ./jdk-6u30-linux-i586.bin
[root@station83 ~]#mkdir -pv /usr/local/java
[root@station83 ~]# mv jdk1.6.0_30/ /usr/local/java
[root@station83 ~]# vim /etc/profile
 JAVA_HOME=/usr/local/java/dk1.6.0_30
       PATH=$JAVA_HOME/bin:$PATH
 export  JAVA_HOME PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC
[root@station83 ~]# source /etc/profile
#####################
安装apache-tomcat
[root@station83 ~]# tar xf apache-tomcat-6.0.35.tar.gz -C /usr/local/
[root@station83 ~]# cd /usr/local/
[root@station83 local]# ln -sv apache-tomcat-6.0.35/ tomcat
[root@station83 ~]# export CATALINA_HOME=/usr/local/tomcat/
[root@station83 ~]# /usr/local/tomcat/bin/catalina.sh start
[root@station83 ~]# vim /etc/init.d/tomcat
#!/bin/sh
#Tomcat init script for linux
#
#chkconfig: 2345 96 14
#description: the apache tomcat servlet/JSP container
JAVA_OPTS='-Xms64m -Xmx128m'
JAVA_HOME=/usr/local/java/jdk1.6.0_30
CATALINA_HOME=/usr/local/tomcat
export JAVA_HOME CATALINA_HOME
exec $CATALINA_HOME/bin/catalina.sh $*
[root@station83 ~]#chmod +x /etc/init.d/tomcat
[root@station83 ~]# chkconfig --add tomcat
[root@station83 ~]# chkconfig  tomcat on
----->测试:http://172.16.8.10:8080/显示出来一个三脚猫的页面就正确了。
##############安装APR
APR:用于增强apache和多个应用程序通信的速度和稳定性;tomcat-native就是让tomcat具备和apache APR 通信的代码;但是APR并不是必须的,只是有了会有更高的稳定性和速度。
tomcat-native需要编译安装---依赖编译环境(参考脚本安装LAMP,在这不写了),apr-devel包,openssl-devel包
[root@station83 ~]# yum install -y openssl-devel
[root@station83 ~]# yum install -y apr-devel
[root@station83 ~]# cd /usr/local/tomcat/bin
[root@station83 bin]# tar xf tomcat-native.tar.gz
[root@station83 bin]# cd tomcat-native-1.1.22-src/jni/native/
[root@station83 native]# ./configure --with-apr=/usr --with-ssl
[root@station83 native]# make && make install
[root@station83 native]# echo  /usr/local/apr/lib > /etc/ld.so.conf.d/apr.conf
[root@station83 native]# ldconfig
[root@station83 native]# ldconfig  -v | grep native
 libtcnative-1.so.0 -> libtcnative-1.so.0.1.22
###############配置tomcat的管理页面---定义用户
[root@station83 ~]# cd /usr/local/tomcat/conf/
[root@station83 conf]# vim tomcat-users.xml#####注意添加的位置,不能写在<!--和-->中间
<role rolename="manager-gui"/>            ####注意在编辑的时候前面不能有空格和其他字符
<role rolename="manager-script"/>
<role rolename="manager-status"/><user username="tomcat" password="gaby" roles="manager-gui,manager-gui,manager-status"/>
##########定义tomcat连接mysql的连接器mysql-connector-java
##先装mysql最好不要用yum装,那上面的mysql版本有点低,编译安装可以借鉴我写的LNMMP脚本
[root@station83 ~]# cd /usr/local/src/
[root@station83 src]# tar -zxvf mysql-5.5.19-linux2.6-i686.tar.gz -C /usr/local/
[root@station83 src]# cd !$
[root@station83 local]# groupadd mysql
[root@station83 local]# useradd -g mysql -s /bin/nologin -M -r mysql
[root@station83 local]# cd mysql
[root@station83 mysql]# chown -R mysql .
[root@station83 mysql]# scripts/mysql_install_db --user=mysql
[root@station83 mysql]# chown -R root .
[root@station83 mysql]# chown -R mysql:mysql data/
[root@station83 mysql]# cp support-files/mysql.server /etc/init.d/mysqld
[root@station83 mysql]# chmod +x !$
[root@station83 mysql]# chkconfig --add mysqld
[root@station83 mysql]# chkconfig  mysqld on
[root@station83 mysql]# cp support-files/my-large.cnf /etc/my.cnf
[root@station83 mysql]#  sed -i '/export.*/ a PATH=$PATH:/usr/local/mysql/bin '
/etc/profile
##tomcat连接mysql的连接器
[root@station83 ~]# cd /usr/local/src/
[root@station83 src]# tar xf mysql-connector-java-5.1.16.tar.gz
[root@station83 src]# cd mysql-connector-java-5.1.16
[root@station83 mysql-connector-java-5.1.16]# mv mysql-connector-java-5.1.16-bin.jar  /usr/local/tomcat/lib/
[root@station83 mysql-connector-java-5.1.16]# service tomcat stop
[root@station83 mysql-connector-java-5.1.16]# service tomcat start
#################以上完成tomcat能够识别apache和mysql,接下来实现tomcat能够识别虚拟主机
对于tomcat来说所有的虚拟主机都放在了/usr/local/tomcat/webapps/目录下;我们在这个目录下创建一个虚拟主机所需要的文件
[root@station83 ~]# cd /usr/local/tomcat/webapps/
[root@station83 webapps]# mkdir mywebapps
##########编辑/usr/local/tomcat/conf/server.xml定义对应得虚拟主机(tomcat知道主机名和ip地址的虚拟主机,默认基于ip的虚拟主机没有开启)
[root@station83 tomcat]# vim /usr/local/tomcat/conf/server.xml
<Host name="www.gaby.com"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">
        <Context docBase="mywebapps" path=""/>
 </Host>
#######编辑JavaCenter_Home_2.0_Source_GBK.zip,把网页文件放到对应的虚拟文件目录下
[root@station83 tomcat]# cd /usr/local/src/
[root@station83 src]# unzip JavaCenter_Home_2.0_Source_GBK.zip
[root@station83 src]# cd JavaCenter_Home_2.0_Source_GBK/source/WebRoot/
[root@station83 WebRoot]# mv * /usr/local/tomcat/webapps/mywebapps/
[root@station83 WebRoot]# cd !$
[root@station83 mywebapps]# service tomcat stop
[root@station83 mywebapps]# service tomcat start
在物理机编辑host文件后,用IE 打开http://www.gaby.com:8080/install/install让其自动安装,因为是实验,就没有配置mysql直接使用root用户,配置后删除install文件
[root@station83 mywebapps]# rm -rf install/
###到目前为止tomcat能够识别虚拟主机了!!!!

######tomcat的安全
安装好tomcat后用natesta -tnlp 会发现一个java运行的8005端口,该端口能够telnet上主机,关闭tomcat,所以一定要定义该端口能够使用的主机
[root@station83 ~]# vim /usr/local/tomcat/conf/server.xml
[root@station83 conf]# telnet localhost 8005
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
SHUTDOWN
Connection closed by foreign host.
[root@station83 conf]# netstat -tnlp