時(shí)間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評(píng)論(0)
Apache的特點(diǎn)是簡(jiǎn)單、速度快、性能穩(wěn)定,并可做代理服務(wù)器來使用。本來它只用于小型或試驗(yàn)Internet網(wǎng)絡(luò),后來逐步擴(kuò)充到各種Unix系統(tǒng)中,尤其對(duì)Linux的支持相當(dāng)完美。Apache有多種產(chǎn)品,可以支持SSL技術(shù),支持多個(gè)虛擬主機(jī)。Apache是以進(jìn)程為基礎(chǔ)的結(jié)構(gòu),進(jìn)程要比線程消耗更多的系統(tǒng)開支,不太適合于多處理器環(huán)境,因此,在一個(gè)Apache Web站點(diǎn)擴(kuò)容時(shí),通常是增加服務(wù)器或擴(kuò)充群集節(jié)點(diǎn)而不是增加處理器。Apache成功之處主要在于它的源代碼開放、有一支開放的開發(fā)隊(duì)伍、支持跨平臺(tái)的應(yīng)用(可以運(yùn)行在幾乎所有的Unix、Windows、Linux系統(tǒng)平臺(tái)上)以及它的可移植性等方面。
幾乎所有的Linux發(fā)布都安裝Apache作為默認(rèn)配置。SuSE7.1甚至預(yù)安裝有包括各種高級(jí)模塊選項(xiàng)的Apache,如PHP3,mod_perl和LDAP等等。用戶會(huì)驚奇地發(fā)現(xiàn)系統(tǒng)安裝成功就會(huì)有一個(gè)功能強(qiáng)大的Web服務(wù)器可供選擇。雖然安裝Apache并不是非常簡(jiǎn)單,但是如果有具有新的特性或安全補(bǔ)丁的Apache發(fā)布,則下載源代碼包并編譯新的Apache是值得的。
Apache不但具有龐大的用戶群基礎(chǔ),并且有豐富的配置使用文檔。Apache提供服務(wù)器端對(duì)腳本技術(shù)的支持,比如Perl、PHP等,Apache結(jié)合使用Apache JServ可以實(shí)現(xiàn)對(duì)Java servlets及JSP的支持。Apache的很多模塊實(shí)現(xiàn)安全方面的防護(hù):如mod_auth提供對(duì)對(duì)服務(wù)器上數(shù)據(jù)進(jìn)行適當(dāng)?shù)谋Wo(hù),而SSL模塊則用來保護(hù)服務(wù)器和客戶端之間的通信安全。
下面我們?cè)俳榻B一下Tomcat服務(wù)器軟件,Tomcat是Sun和Apache合作做出來的JSPServer,支持Servlet2.2及JSP1.1等版本。筆者建議大家使用Tomcat,而且Tomcat未來將會(huì)取代JServ,成為Apache主要的Servlet&JSPEngine。Tomcat在設(shè)計(jì)上是以獨(dú)立的Server執(zhí)行,而不像Jserv是附在Apache中,這樣就更可以發(fā)揮在servlet中,非HttpServlet的能力。Tomcat是Java程序,所以只要有JDK就可以使用,不需要考慮操作系統(tǒng)平臺(tái)。
作為WEB服務(wù)器擴(kuò)展的Tomcat服務(wù)器有一些問題需要說明:
當(dāng)處理靜態(tài)頁面時(shí),Tomcat不如Apache迅速。
Tomcat不象Apache一樣可配置。
Tomcat不象Apache一樣強(qiáng)壯。
基于以上原因,一個(gè)現(xiàn)實(shí)的網(wǎng)站使用一個(gè)Apache作為Web服務(wù)器,為網(wǎng)站的靜態(tài)頁面請(qǐng)求提供服務(wù);并使用Tomcat服務(wù)器作為一個(gè)Servlet/JSP插件,顯示網(wǎng)站的動(dòng)態(tài)頁面。
采用apache->tomcat這樣的結(jié)構(gòu)才具有更特出的優(yōu)點(diǎn),主要體現(xiàn)在具有更好的可擴(kuò)展性和安全性。這種類型的站點(diǎn)的主要特點(diǎn)是每一個(gè)頁面都可能是動(dòng)態(tài)生成的,但這些數(shù)據(jù)中主要部分還是靜態(tài)的(比如,各類圖像GIF、JPG、PNG,流式媒體等),這種結(jié)構(gòu)的優(yōu)點(diǎn)是兼有可擴(kuò)展性和安全性。
下面以solairs8為例,免費(fèi)下載Solaris版的Apache1.3.27,Tomcat4.1.12來說明安裝配置WEB服務(wù)軟件apache和應(yīng)用服務(wù)軟件tomcat(包括JDK),其它平臺(tái)可以類比。
注意:下載的Apache、Tomcat的版本與操作系統(tǒng)的類型有關(guān)。
一、應(yīng)用環(huán)境
操作系統(tǒng)為Solaris8,應(yīng)用環(huán)境為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應(yīng)用軟件包jakarta-tomcat-4.1.12.tar.gz。
2、編譯與安裝
假設(shè)各軟件包已下載到當(dāng)前的某個(gè)工作目錄(如:/home/tmp)下,Apache和Tomcat將安裝在/home目錄下。在當(dāng)前目錄我們可以進(jìn)行如下操作。
1)編譯和安裝Apache應(yīng)用服務(wù)
①解包
$/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 |
假設(shè)perl的解釋命令安裝在/usr/local/bin目錄下,Apache服務(wù)安裝在/home/apache-1.3.27目錄下。
$make
③安裝
$su
#make install
2)編譯與安裝mod_jk插件
①解包
$/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服務(wù)
用超級(jí)用戶身份把已編譯的Tomcat4.1.12解包到/home目錄下即可。
$su
#/usr/local/bin/gzip-dcjakarta-tomcat-4.1.12.tar.gz|(cd/home;tarxf-)
3、參數(shù)配置
(1)配置Apache服務(wù)
用vi命令打開Apache的配置文件httpd.conf。
#cd /home/apache-1.3.27/conf
#vi httpd.conf
在末尾添加以下內(nèi)容。
JkWorkersFile/home/jakarta-tomcat-4.1.12/conf/workers.properties
JkLogFile/home/apache-1.3.27/logs/mod_jk.log
注意:日志文件可根據(jù)具體情況調(diào)整。
JkLogLevelwarn JkMount/*.jspajp13 JkMount/servlet/*.jspajp13 |
(2)配置Tomcat服務(wù)
首先,修改server.xml文件。
這里假定存放Apache的Web網(wǎng)頁的根目錄為/home/htdocs。
#cd /home/jakarta-tomcat-4.1.12/conf #vi server.xml |
然后,在Connectors部分嵌入如下內(nèi)容。
<ConnectorclassName="org.apache.tomcat.service. PoolTcpConnector"><Parametername="handler" value="org.apache.tomcat.service.connector.Ajp 13ConnectionHandler"/> <Parametername="port"value="8007"/> </Connector> |
接著,在SpecialWebapps部分嵌入如下內(nèi)容。
<Contextpath="" 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啟動(dòng)和關(guān)閉命令文件。
#cd ../bin #vi startup.sh |
再在"BASEDIR=`dirname$0`"語句前嵌入如下內(nèi)容。