實驗環境:centos6.4-i386html
有用軟件:http://pan.baidu.com/s/1bn1m2UNjava
網絡拓撲:linux
IP地址規劃web
Httpd服務器:192.168.29.20shell
Tomcat服務器:192.168.29.30apache
Apache+Tomcat整合的好處:vim
1.Apache主要用來解析靜態文本,如html,tomcat雖然也有此功能,但apache能大大提升效率,對於併發數較大的企業級應用,能更好的顯示apache的高效率;centos
2.Tomcat用來解析jsp,servlet等,全部的客戶請求首先會發送到Apache,若是請求是靜態文本則由apache解析,並把結果返回給客戶端,若是是動態的請求,如jsp,apache會把解析工做交給tomcat,由tomcat進行解析(這首先要二者現實整合),tomcat解析完成後,結果還是經過apache返回給客戶端,這樣就能夠達到分工合做,實現負載均衡,提升系統的性能!並且由於JSP是服務器端解釋代碼的,這樣整合能夠減小Tomcat的服務開銷。tomcat
Apache+Tomcat整合的原理bash
做爲Apache下面的子項目,Tomcat 與 Apache之間有着自然的聯繫。在實際操做中,主要是Apache做爲主服務器運行,當監聽到有jsp或者servlet的請求時,將請求轉發給tomcat服務器,由tomcat服務器進行解析後,發回apache,再由apache發回用戶。
在tomcat中有兩個監聽的端口,一個是8080用於提供web服務,一個是8009用於監聽來自於apache的請求。當apache收到jsp或者servlet請求時,就向tomcat 的8009端口發送請求,交由tomcat處理後,再返回給apache,由apache返回給客戶。
Tomcat安裝
首先搭建java的運行環境,安裝jdk
[root@localhosttomcat]# rpm -ivh jdk-7u45-linux-i586.rpm
編輯環境變量/etc/profile
而後從新加載/etc/profile文件
[root@localhosttomcat]# . /etc/profile
而後執行java –version能夠看到java的版本號
[root@localhosttomcat]# java –version java version"1.7.0_09-icedtea" OpenJDK RuntimeEnvironment (rhel-2.3.4.1.el6_3-i386) OpenJDK Client VM(build 23.2-b09, mixed mode)
而後安裝tomcat
[root@localhosttomcat]# tar -zxvf apache-tomcat-7.0.42.tar.gz -C /usr/local/ [root@localhosttomcat]# cd /usr/local/ [root@localhostlocal]# ln -s apache-tomcat-7.0.42 tomcat
將/usr/local/tomcat目錄下的bin目錄加入到搜索路徑中
到這裏tomcat就安裝完成了,先來測試一下
開啓tomcat
[root@localhost ~]#catalina.sh start
從圖中看能夠訪問
httpd安裝
首先安裝apr
[root@nddnd ~]# tar-zxvf apr-1.4.6.tar.gz -C /usr/local/src/ [root@nddnd ~]# cd/usr/local/src/apr-1.4.6/ [root@nddndapr-1.4.6]#./configure –prefix=/usr/local/apr [root@nddndapr-1.4.6]# make && make install
安裝apr-util
[root@nddnd ~]# tar -zxvf apr-util-1.5.1.tar.gz -C /usr/local/src/ [root@nddnd ~]# cd /usr/local/src/apr-util-1.5.1/ [root@nddndapr-util-1.5.1]# ./configure --prefix=/usr/local/apr-util--with-apr=/usr/local/apr/bin/apr-1-config [root@nddndapr-util-1.5.1]# make && make install
安裝httpd
[root@nddnd~]# tar -jxvf httpd-2.4.4.tar.bz2 -C /usr/local/src/ [root@nddnd~]# cd /usr/local/src/httpd-2.4.4/ [root@nddndhttpd-2.4.4]# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-rewrite --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config --with-pcre -with-z --enable-mpms-shared=all --with-mpm=event --enable-proxy --enable-proxy-http --enable-proxy-ajp [root@nddndhttpd-2.4.4]# make && make install
添加/usr/local/apache/bin到系統搜索路徑
[root@nddndapache]# . /etc/profile
編寫控制httpd的shell腳本放到/etc/init.d/目錄裏。
#!/bin/bash prog=/usr/local/apache/bin/httpd lockfile=/var/lock/subsys/httpd start(){ if [ -e $lockfile ];then echo "httpd server is started" else echo -n "httpd server is starting... " sleep 1 $prog –k start &>/dev/null && echo "[ ok]" && touch $lockfile ||echo "[ failer ]" fi } stop(){ if [ ! -e $lockfile ];then echo "httpd server is stoped" else echo -n "httpd server is stoping... " sleep 1 $prog –k stop &>/dev/null && echo "[ ok ]"&& rm -rf $lockfile ||echo "[ failer ]" fi } status(){ if [ -e $lockfile ];then echo "httpd server is started" else echo "httpd server no found" fi } case $1 in start) start ;; stop) stop ;; restart) stop start ;; status) status ;; *) echo"USAGE:start|stop|restart|status" ;; esac
給於可執行權限
[root@nddnd apache]# chmod a+x/etc/init.d/httpd
編輯httpd的配置文件
[root@nddnd apache]# vim/etc/httpd/httpd.conf
啓動httpd
[root@nddnd apache]# service httpd start
Httpd到這裏也安裝完成了。
配置httpd
[root@nddndapache]# vim /etc/httpd/httpd.conf
編輯:/etc/httpd/extra/httpd-vhosts.conf
[root@nddndapache]# vim /etc/httpd/extra/httpd-vhosts.conf
重啓httpd
[root@nddndapache]# service httpd restart
Tomcat服務器配置
[root@localhostconf]# mkdir -pv /www/webapps [root@localhostconf]# cd /www/webapps/ [root@localhost webapps]# mkdirtest [root@localhost webapps]#mkdir test/{lib,classes,WEB-INF} [root@localhosttest]# vim index.jsp <%@pagelanguage="java" %> <html> <head> <title>TomcatA</title> </head> <body> <h2><font color="red">TomcatA in www.tyedus.com</font></h2> <% out.println("hello,word");%> </body> </html>
修改/usr/local/tomcat/conf/server.xml
[root@localhost webapps]# cd/usr/local/tomcat/conf/ [root@localhost conf]# vimserver.xml
測試訪問www.abc.com
從圖中看能夠成功訪問。
到這裏httpd和tomcat的結合就介紹完了。