CentOS 6.2Web系統整合之Apache與Tomcat整合

來源:互聯網
上載者:User

之前有寫過LAMP平台的搭建,包括後面LAMP平台的整合但是由於我發布的文章娛樂性太少,居然被人惡指我的文章是轉載的,對此我表示很無奈,本身寫部落格也只是記錄和協助到需要的人,所以後面我仍會保持這樣的風格去發布我自己的博文),本文進一步介紹Apache伺服器與Tomcat的整合,以便支援JSP。都知道的是Apache支援靜態頁面,Tomcat支援動態網頁面,我們可以使用Apache+Tomcat的方式把它們的優勢結合起來,強強聯合,Apache負責轉寄,對Jsp的處理交給Tomcat來處理。也就是說Apache專門提供HTTP服務,以及相關配置例如虛擬機器主機,URL轉寄等),而Tomcat是Apache組織在服務J2EE的JSP、Servlet標準下開發的一個JSP伺服器。既然Apache和Tomcat都是Web伺服器,怎麼不直接使用Tomcat伺服器,反而去和Apache整合,我們知道Tomcat支援Servlet和JSP,本身是可以作為Web Server,但是、當處理大量靜態頁面時,Tomacat不如Apache效能好,不如Apache那樣強壯。但是Apache作為最流行的Web伺服器雖然能夠高效的處理靜態頁面,但並不支援JSP及Servlet,所以現在常用的做法是將它們合二為一,讓Apache處理靜態頁面,而把動態網頁面的請求交給Tomcat處理,發揮各自的優勢。通過在Apache中載入整合模組和進行設定,Apache就能夠根據URL,把不屬於自己的請求轉給Tomcat。要讓Apache和Tomcat聯合工作,還需要一個連接器把它們聯絡起來。Connector對於效能、配置的方便性有很重要的影響,目前大致有JK1.x、JK2、mod_webapp三種,JK使用比較廣泛。
Tomcat 與 Apache 整合的準備工作 註:本環境是在Apache編譯完成後繼續的 JDK 安裝與測試在tomcat運行環境下,JDK是必不可少的軟體,因為tomcat只是一個Servlet/JSP容器,底層的操作都需要JDK來完成)
[root@chenyi software]# chmod a+x jdk-6u7-linux-i586.bin [root@chenyi software]# ./jdk-6u7-linux-i586.bin
環境變數設定Tomcat在啟動的時候會去尋找jdk的安裝路徑)
[root@chenyi software]# vi /etc/profile.d/java.sh   export JAVA_HOME=/software/jdk1.6.0_07   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
[root@chenyi software]# chmod 755 /etc/profile.d/java.sh [root@chenyi software]# . /etc/profile
 可以測試下java是否正常工作
[root@chenyi software]# java -versionjava version "1.6.0_07"Java(TM) SE Runtime Environment (build 1.6.0_07-b06)Java HotSpot(TM) Client VM (build 10.0-b23, mixed mode, sharing)
測試JAVA程式
[root@chenyi software]# vi test.javapublic class test {    public static void main(String args[]) {        System.out.println("Hello World!");    }}[root@chenyi software]# javac test.java [root@chenyi software]# java testHello World!
安裝TomcatTomcat的安裝只需要解壓,改名移到合適的地方即可完成安裝)
[root@chenyi lamp]# tar zxf apache-tomcat-6.0.14.tar.gz[root@chenyi lamp]# mv apache-tomcat-6.0.14 /software/tomcat
編譯產生mod_jk。這裡是為了更靈活的使用mod_jk連接器,所以採用源碼方式編譯出所需要的JK模組在編譯時間需要指定apache的apxs的路徑))
[root@chenyi lamp]# tar zxf jakarta-tomcat-connectors-1.2.15-src.tar.gz [root@chenyi lamp]# cd jakarta-tomcat-connectors-1.2.15-src[root@chenyi jakarta-tomcat-connectors-1.2.15-src]# ./configure --with-apxs=/software/apache2/bin/apxs && make && make install[root@chenyi native]# ls /software/apache2/modules/mod_jk.so /software/apache2/modules/mod_jk.so
建立mod_jk.conf注意我所在的路徑)
[root@chenyi httpd]# vi mod_jk.conf loadModule jk_module "/software/apache2/modules/mod_jk.so"     #指定mod_jk.soJkWorkersFile "/etc/httpd/workers.properties"           #JK連接器屬性的設定JkLogFile "/software/tomcat/logs/mod_jk.log"JkLogLevel emergServerName localhostJkmount /*.jsp ajp13
建立workers.properties
workers.tomcat_home=/software/tomcatworkers.java_home=/software/jdk1.6.0_07ps=/workers.list=ajp13                  #worker.list用來定義Workers列表,當apache啟動時,workers.properties作為外掛程式將初始化出現在worker.list列表中的workers。workers.ajp13.port=8009                #tomcat worker主機監聽的連接埠。預設情況下tomcat在ajp13協議中使用的連接埠為8009workers.ajp13.host=127.0.0.1           #監聽ajp13請求的的tomcat worker主機地址workers.ajp13.type=ajp13              #定義一個名為“ajp13”的worker,其使用ajp13協議與tomcat 進程通訊workers.ajp13.lbfactor=1              #當tomcat用作負載平衡時,此屬性被使用,表示此tomcat worker節點的負載平衡權值。
配置Apache
[root@chenyi httpd]#vi httpd.conf
添加如下語句
Include /etc/httpd/mod_jk.conf
 儲存退出後重啟Apache和Tomcat
[root@chenyi ~]# /software/apache2/bin/apachectl stop[root@chenyi ~]# /software/apache2/bin/apachectl start[root@chenyi ~]# /software/tomcat/bin/shutdown.sh Using CATALINA_BASE:   /software/tomcatUsing CATALINA_HOME:   /software/tomcatUsing CATALINA_TMPDIR: /software/tomcat/tempUsing JRE_HOME:       /software/jdk1.6.0_07/jre[root@chenyi ~]# /software/tomcat/bin/startup.sh Using CATALINA_BASE:   /software/tomcatUsing CATALINA_HOME:   /software/tomcatUsing CATALINA_TMPDIR: /software/tomcat/tempUsing JRE_HOME:       /software/jdk1.6.0_07/jre
 通過netstat查看相關服務狀態
[root@chenyi ~]# netstat -pant | grep 80tcp        0      0 127.0.0.1:42442             127.0.0.1:8009              TIME_WAIT   -                   tcp        0      0 127.0.0.1:42441             127.0.0.1:8009              TIME_WAIT   -                   tcp        0      0 127.0.0.1:42438             127.0.0.1:8009              TIME_WAIT   -                   tcp        0      0 127.0.0.1:42439             127.0.0.1:8009              TIME_WAIT   -                   tcp        0      0 127.0.0.1:42446             127.0.0.1:8009              TIME_WAIT   -                   tcp        0      0 127.0.0.1:42440             127.0.0.1:8009              TIME_WAIT   -                   tcp        0      0 127.0.0.1:42437             127.0.0.1:8009              TIME_WAIT   -                   tcp        0      0 127.0.0.1:42443             127.0.0.1:8009              TIME_WAIT   -                   tcp        0      0 127.0.0.1:42445             127.0.0.1:8009              TIME_WAIT   -                   tcp        0      0 :::8080                     :::*                        LISTEN      4434/java           tcp        0      0 :::80                       :::*                        LISTEN      4399/httpd          tcp        0      0 ::ffff:127.0.0.1:8005       :::*                        LISTEN      4434/java           tcp        0      0 :::8009                     :::*                        LISTEN      4434/java           tcp        0      0 ::ffff:127.0.0.1:58570      ::ffff:127.0.0.1:8005       TIME_WAIT   -                   tcp        0      0 ::ffff:127.0.0.1:43053      ::ffff:127.0.0.1:8080       TIME_WAIT   -
 通過http://IP:8080訪問進行測試650) this.width=650;" src="http://www.bkjia.com/uploads/allimg/131227/1930245605-0.jpg" alt="" border="0" />
設定Tomcat的登入密碼
[root@chenyi ~]# vi /software/tomcat/conf/tomcat-users.xml<?xml version='1.0' encoding='utf-8'?><tomcat-users>  <role rolename="manager"/>  <role rolename="admin"/>  <user username="itchenyi" password="123456" roles="manager,admin"/>#新添加的</tomcat-users>
寫一個簡單的jsp頁面進行測試[root@chenyi ~]# vi /software/tomcat/webapps/ROOT/test.jsp
<%@ page language="java" %><%@ page import="java.util.*" %><html>  <head>    <title>JSP test page.</title>  </head>  <body>    <% out.println("Integration of Apache and Tomcat Web system integration"); %>  </body></html>
訪問650) this.width=650;" src="../attachment/201304/155222570.jpg" alt="" border="0" />tomcatjsp測試
QQ交流群:41405569

本文出自 “IT辰逸” 部落格,請務必保留此出處http://itchenyi.blog.51cto.com/4745638/1169267

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.