简介:
apache作为主流的web服务软件之一,可以作为独立的web服务器来运行,但是只能支持静态网页,对于动态网页(asp,jsp,php,cgi等)的处理则显得无能为力。tomcat也可以作为独立的web服务器来运行,但是tomcat作为java服务器,仅仅作为一个servlet容器。由于apache解释静态页面要比tomcat服务来的稳定且高效,顾将两者整合起来实现动静页面都能处理的能力。
1.1 apache+tomcat整合的好处:
1) Apache主要用来解析静态文本,如html,tomcat虽然也有此功能,但apache能大大提高效率,对于并发数较大的企业级应用,能更好的显示apache的高效率;
2). Tomcat用来解析jsp,servlet等,所有的客户请求首先会发送到Apache,如果请求是静态文本则由apache解析,并把结果返回给客户端,如果是动态的请求,如jsp,apache会把解析工作交给tomcat,由tomcat进行解析(这首先要两者实现整合),tomcat解析完成后,结果仍是通过apache返回给客户端,这样就可以达到分工合作,实现负载均衡,提高系统的性能!而且因为JSP是服务器端解释代码的,这样整合可以减少Tomcat的服务开销
1.2 安装apache-tomcat
安装apache-tomcat需要jvm环境,由于本次安装tomcat采用的是tomcat9.0.2的版本,因此如果JVN环境在java EE8以下的需要升级到EE8上才行.以下是jvm软件包下载链接和安装方式,本此安装采用tar.gz包的方式,解压后放到/usr/java/目录下再配置/etc/profile环境变量即可.
Jdk下载链接: http://download.oracle.com/otn-pub/java/jdk/9.0.1+11/jdk-9.0.1_linux-x64_bin.tar.gz?AuthParam=1513257490_36be8b44d015fef18ffc0758476d0a66
Tomcat 9.0.2下载链接:http://mirrors.hust.edu.cn/apache/tomcat/tomcat-9/v9.0.2/bin/apache-tomcat-9.0.2.tar.gz
获取软件包
# wget http://download.oracle.com/otn-pub/java/jdk/9.0.1+11/jdk-9.0.1_linux-x64_bin.tar.gz?AuthParam=1513257490_36be8b44d015fef18ffc0758476d0a66 #wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-9/v9.0.2/bin/apache-tomcat-9.0.2.tar.gz
配置java环境变量
卸载系统自带java:
# yum -y remove java* # mv jdk-9.0.1_linux-x64_bin.tar.gz\?AuthParam\=1513257490_36be8b44d015fef18ffc0758476d0a66 jdk-9.0.1_linux-x64_bin.tar.gz #tar zxvf jdk-9.0.1_linux-x64_bin.tar.gz
将下载的jdk-9.0.1_linux-x64_bin.tar.gz包直接解压到/usr/java/下即可,
# tar -xvf /usr/local/src/jdk-9.0.1_linux-x64_bin.tar.gz # mkdir /usr/java # mv jdk-9.0.1/ /usr/java/ #vim /etc/profile export JAVA_HOME=/usr/java/jdk-9.0.1/ export JAVA_BIN=/usr/java/jdk-9.0.1/bin export CLASSPATH=.:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar export LD_LIBRARY_PATH=/usr/local/native/lib/ export LD_RUN_PATH=/usr/local/native/bin/ export PATH=${JAVA_HOME}bin:${LD_RUN_PATH}:$PATH:/usr/apr/bin/:/usr/apr/lib/ 重载环境变量 # source /etc/profile
验证jdk版本,说明安装成功
# java -version java version "9.0.1" Java(TM) SE Runtime Environment (build 9.0.1+11) Java HotSpot(TM) 64-Bit Server VM (build 9.0.1+11, mixed mode)
安装tomcat:
# tar xvf apache-tomcat-9.0.2.tar.gz # mv /usr/local/src/ apache-tomcat-9.0.2/usr/local/tomcat
根据tomcat自身携带的sh脚本命令编辑tomcat控制脚本
#!/bin/bash # Tomcat init script for linux # chkconfig: 2345 96 14 #discription: Apache Tomcat Server/Jsp container JAVA_OPTS='-server -Xms64m -Xmx128m' CATALINA_HOME=/usr/local/tomcat $CATALINA_HOME/bin/catalina.sh $*
为启动脚本赋予可执行权限
# chmod u+x /etc/init.d/tomcat
测试脚本,使用脚本启动tomcat:
# service tomcat start # netstat -anptu | grep 8080 tcp 0 0 :::8080 :::* LISTEN 29822/java
8080端口被监听,开启服务正常运行
添加开机启动
# chkconfig --add tomcat # chkconfig tomcat on
通过浏览器输入”192.168.31.103:8080”测试toncat web服务是否正常启动.正常访问,则tomcat搭建成功
1.3 安装httpd服务并加载mod_jk模块:
什么是mod_jk模块?
mod_jk简称JK,是Apache服务器的一个可插入模块,用以为Apache或IIS服务器提供处理JSP/Servlet的能力。
Apache作为一款强大的Web服务器,本身缺乏处理JSP/Servlet的功能,为了能够处理对JSP/Servlet的请求,必须使用JSP/Servlet容器,如Tomcat等。
Tomcat本身也可以作为Web服务器使用,但是其功能远不及Apache强大,所以Tomcat往往作为JSP/Servlet容器使用。
下载tomcat-connectors
# wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.42-src.tar.gz
安装apache服务器:
# yum -y install httpd httpd-devel # service httpd restart
安装tomcat-connectors
#tar xvf tomcat-connectors-1.2.42-src.tar.gz # cd tomcat-connectors-1.2.42-src/native/ # ./configure --with-apxs=/usr/sbin/apxs # make # make install
查看mod_jk.so是否已经存在
# ls /etc/httpd/modules/mod_jk.so /etc/httpd/modules/mod_jk.so
生成mod_jk的配置文件
#cd /root/Desktop/ jakarta-tomcat-connectors-1.2.15-src/jk/conf #cp workers.properties /etc/httpd/conf
清空并编辑配置文件/etc/httpd/conf/workers.properties
vim /etc/httpd/conf/workers.properties
添加一下内容
worker.list=worker1 #定义workers列表 worker.worker1.type=ajp13 #定义workers的类型 worker.worker1.host=localhost #定义workers主机 worker.worker1.port=8009 #定义tomcat worker主机的监听端口
修改httpd配置文件,添加模块
# vim /etc/httpd/conf/httpd.conf LoadModule jk_module modules/mod_jk.so jkWorkersFile /etc/httpd/conf/workers.properties jkMount /*.jsp worker1
重启httpd服务
# service httpd restart
# netstat -anptu | grep 80 #配置的http监听端口被监听则服务启动成功,
通过浏览器访问10.10.125.1/index.jsp,能正常访问则说明apache+tomcat整合完成