用Apache+Tomcat創建與管理Web服務器

發表于:2007-07-04來源:作者:點擊數: 標簽:
Apache的特點是簡單、速度快、 性能 穩定,并可做代理 服務器 來使用。本來它只用于小型或試驗Internet 網絡 ,后來逐步擴充到各種 Unix 系統中,尤其對Linux的支持相當完美。Apache有多種產品,可以支持SSL技術,支持多個虛擬主機。Apache是以進程為基礎的

  Apache的特點是簡單、速度快、性能穩定,并可做代理服務器來使用。本來它只用于小型或試驗Internet網絡,后來逐步擴充到各種Unix系統中,尤其對Linux的支持相當完美。Apache有多種產品,可以支持SSL技術,支持多個虛擬主機。Apache是以進程為基礎的結構,進程要比線程消耗更多的系統開支,不太適合于多處理器環境,因此,在一個Apache Web站點擴容時,通常是增加服務器或擴充群集節點而不是增加處理器。Apache成功之處主要在于它的源代碼開放、有一支開放的開發隊伍、支持跨平臺的應用(可以運行在幾乎所有的Unix、Windows、Linux系統平臺上)以及它的可移植性等方面。
  
  幾乎所有的Linux發布都安裝Apache作為默認配置。SuSE7.1甚至預安裝有包括各種高級模塊選項的Apache,如PHP3,mod_perl和LDAP等等。用戶會驚奇地發現系統安裝成功就會有一個功能強大的Web服務器可供選擇。雖然安裝Apache并不是非常簡單,但是如果有具有新的特性或安全補丁的Apache發布,則下載源代碼包并編譯新的Apache是值得的。
  
  Apache不但具有龐大的用戶群基礎,并且有豐富的配置使用文檔。Apache提供服務器端對腳本技術的支持,比如Perl、PHP等,Apache結合使用Apache JServ可以實現對Java servlets及JSP的支持。Apache的很多模塊實現安全方面的防護:如mod_auth提供對對服務器上數據進行適當的保護,而SSL模塊則用來保護服務器和客戶端之間的通信安全。
  
  下面我們再介紹一下Tomcat服務器軟件,Tomcat是Sun和Apache合作做出來的JSPServer,支持Servlet2.2及JSP1.1等版本。筆者建議大家使用Tomcat,而且Tomcat未來將會取代JServ,成為Apache主要的Servlet&JSPEngine。Tomcat在設計上是以獨立的Server執行,而不像Jserv是附在Apache中,這樣就更可以發揮在servlet中,非HttpServlet的能力。Tomcat是Java程序,所以只要有JDK就可以使用,不需要考慮操作系統平臺。
  
  作為WEB服務器擴展的Tomcat服務器有一些問題需要說明:
  
  當處理靜態頁面時,Tomcat不如Apache迅速。
  Tomcat不象Apache一樣可配置。
  Tomcat不象Apache一樣強壯。
  
  基于以上原因,一個現實的網站使用一個Apache作為Web服務器,為網站的靜態頁面請求提供服務;并使用Tomcat服務器作為一個Servlet/JSP插件,顯示網站的動態頁面。
  
  采用apache->tomcat這樣的結構才具有更特出的優點,主要體現在具有更好的可擴展性和安全性。這種類型的站點的主要特點是每一個頁面都可能是動態生成的,但這些數據中主要部分還是靜態的(比如,各類圖像GIF、JPG、PNG,流式媒體等),這種結構的優點是兼有可擴展性和安全性。
  
  下面以solairs8為例,免費下載Solaris版的Apache1.3.27,Tomcat4.1.12來說明安裝配置WEB服務軟件apache和應用服務軟件tomcat(包括JDK),其它平臺可以類比。
  
  注意:下載的Apache、Tomcat的版本與操作系統的類型有關。
  
  一、應用環境
  操作系統為Solaris8,應用環境為Java1.3(假定安裝在/usr/java1.3目錄下)、perl5.6(假定安裝在/usr/local/bin目錄下)和gzip(假定安裝在/usr/local/bin目錄下)。
  
  二、軟件包的下載、編譯與安裝
  1、下載地址
  
  在http://www.apache.org可下載Apache源代碼軟件包apache_1.3.27.tar.gz。
  在http://jakarta.apache.org/builds/tomcat/release/v4.1.12/src/可下載Tomcat源代碼軟件包jakarta-tomcat-4.1.12-src.tar.gz。
  在http://jakarta.apache.org/builds/jakarta-tomcat/release/v4.1.12/bin/可下載已編譯的Tomcat應用軟件包jakarta-tomcat-4.1.12.tar.gz。
  
  2、編譯與安裝
  
  假設各軟件包已下載到當前的某個工作目錄(如:/home/tmp)下,Apache和Tomcat將安裝在/home目錄下。在當前目錄我們可以進行如下操作。
  
  1)編譯和安裝Apache應用服務
  
 ?、俳獍?br>  
  $/usr/local/bin/gzip-dc./apache_1.3.27.tar.gz|tarxf-
  
 ?、诰幾g
  
  $cd apache_1.3.27
  $./configure--prefix=/home/apache-1.3.27
  --with-perl=/usr/local/bin/perl--enable-module=so
  
  假設perl的解釋命令安裝在/usr/local/bin目錄下,Apache服務安裝在/home/apache-1.3.27目錄下。
  
  $make
  
 ?、郯惭b
  
  $su
  #make install
  
  2)編譯與安裝mod_jk插件
  
 ?、俳獍?br>  
  $/usr/local/bin/gzip-dcjakarta-tomcat-4.1.12-src.tar.gz|tarxf-
  
 ?、诰幾g
  
  $cd jakarta-tomcat-4.1.12-src/src/native/apache1.3
  $/home/apache-1.3.27/bin/apxs-omod_jk.so-D SOLARIS-I../jk-I/
  usr/java1.3/include-I/usr/java1.3/include/solaris-lposix4-c*.c../jk/*.c
  
  假定Java安裝在/usr/java1.3目錄下。
  
 ?、郯惭b
  
  $su
  #/home/apache-1.3.27/bin/apxs-i-a-njk mod_jk.so
  cp mod_jk.so/home/apache-1.3.27/libexec/mod_jk.so
  chmod 755 /home/apache-1.3.27/libexec/mod_jk.so
  [activating module`jkin/home/apache-1.3.27/conf/httpd.conf]
  
  3)安裝Tomcat服務
  
  用超級用戶身份把已編譯的Tomcat4.1.12解包到/home目錄下即可。
  
  $su
  #/usr/local/bin/gzip-dcjakarta-tomcat-4.1.12.tar.gz|(cd/home;tarxf-)
  
  3、參數配置
  
  (1)配置Apache服務
  
  用vi命令打開Apache的配置文件httpd.conf。
  
  #cd /home/apache-1.3.27/conf
  #vi httpd.conf
  
  在末尾添加以下內容。
  
  JkWorkersFile/home/jakarta-tomcat-4.1.12/conf/workers.properties
  JkLogFile/home/apache-1.3.27/logs/mod_jk.log
  
  注意:日志文件可根據具體情況調整。
  
  JkLogLevelwarn
  JkMount/*.jspajp13
  JkMount/servlet/*.jspajp13
  
  (2)配置Tomcat服務
  
  首先,修改server.xml文件。
  
  這里假定存放Apache的Web網頁的根目錄為/home/htdocs。
  
  #cd /home/jakarta-tomcat-4.1.12/conf
  #vi server.xml
  
  然后,在Connectors部分嵌入如下內容。
  
 ?。糃onnectorclassName="org.apache.tomcat.service.
  PoolTcpConnector"><Parametername="handler"
  value="org.apache.tomcat.service.connector.Ajp
  13ConnectionHandler"/>
 ?。糚arametername="port"value="8007"/>
 ?。?Connector>
  
  接著,在SpecialWebapps部分嵌入如下內容。
  
 ?。糃ontextpath=""
  docBase="/home/htdocs"
  debug="0">
 ?。?Context>
  
  修改workers.properties文件。
  
  #vi workers.properties
  ...
  workers.tomcat_home=/home/jakarta-tomcat-4.1.12
  ...
  workers.java_home=/usr/java1.3
  ...
  ps=/
  ...
  
  隨后,修改Tomcat啟動和關閉命令文件。
  
  #cd ../bin
  #vi startup.sh
  
  再在"BASEDIR=`dirname$0`"語句前嵌入如下內容。
  
  PATH=/usr/java1.3/bin:$PATH:.
  JAVA_HOME=/usr/java1.3
  TOMCAT_HOME=/home/jakarta-tomcat-4.1.12
  Export PATH JAVA_HOMETOMCAT_HOME
  #vi shutdown.sh
  
  最后,在"BASEDIR=`dirname$0`"語句前嵌入如下內容。
  
  PATH=/usr/java1.3/bin:$PATH:.
  JAVA_HOME=/usr/java1.3
  TOMCAT_HOME=/home/jakarta-tomcat-4.1.12
  Export PATH JAVA_HOMETOMCAT_HOME
  
  至此,Apache和Tomcat服務器軟件安裝成功,上面是在UNIX(Solaris)平臺下構建JSP網站的基本配置。Apache與Tomcat結合支持JSP動態網頁開始是通過一個名為"mod_jserv"的插件來實現的,采用這種Apache/Jserv方式配置參數十分復雜,運行效率很低,而且對SSL(一種加密傳輸方式)的支持也不理想,因此Jakarta工作組新近開發了"mod_jk"插件,它很好地彌補了mod_jserv的缺點,而且能支持Apache以外的多種Web服務。關于這種Apache/Jk方式的實現原理,請參考有關資料。
  
  三、UNIX或LIUNX環境下Web服務器的安全管理與維護
  1、Apache和Tomcat的啟動和關閉
  #/home/apache-1.3.27/bin/apachectl start    啟動
  #/home/apache-1.3.27/bin/apachectl stop     關閉
  #/home/jakarta-tomcat-4.1.12/bin/startup sh   啟動
  #/home/jakarta-tomcat-4.1.12/bin/shutdown sh  關閉
  
  2、Apache和Tomcat的web服務器的安全管理
  
  1)Apache和Tomcat都具有支持安全Socket層(SSL)的功能
  
  在Tomcat中聲明安全性,WEB應用程序的安全性主要在相應的Web.xml中設置,Tomcat支持的鑒權機制為HTTP基本鑒權機制BASIC和基于表單的鑒權機制FROM(JSP網站)。
  
  過濾是Tomcat 4的新功能,能夠用過濾器來實現以前使用不便的或難以實現的功能,這些功能包括:
  
  資源訪問(Web頁、JSP頁、servlet)的定制身份認證;
  應用程序級的訪問資源的審核和記錄;
  應用程序范圍內對資源的加密訪問,它建立在定制的加密方案基礎上;
  對被訪問資源的及時轉換,包括從servlet和JSP的動態輸出。
  
  2)Apache的安全設置
  
  Apache服務器設置安全信息--Aclearcase/" target="_blank" >ccess.conf文件中的指令控制著用戶對站點的訪問及如何進行訪問方面的信息。包括文件樹的安全、腳本目錄安全性、Options指令、AllowOverride指令、使用Order指令、使用有限容器、添加用戶鑒定功能等)。
  
  3)Apache模塊(PHP網站)
  
  當PHP做為Apache的模塊來運行時它繼承了Apache的安全設置。任何的文件請求都要經過Apache的嚴格檢查,只有通過檢查的請求才被送往PHP。

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97