国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網(wǎng)站 > Apache > 正文

Linux下Tomcat與Apache Web服務(wù)器的整合

2024-08-27 18:29:02
字體:
供稿:網(wǎng)友

1、引言
基于web技術(shù)的internet/intranet近年來已經(jīng)得到了廣泛的應(yīng)用,intranet是以tcp/ip協(xié)議為基礎(chǔ)、以web為核心的企業(yè)內(nèi)部網(wǎng),用戶通過低成本、簡單易用的客戶瀏覽器就能隨時(shí)隨地到企業(yè)的web站點(diǎn)上查閱自己所需的數(shù)據(jù)。瀏覽器客戶端操作界面的一致性避免了c/s模式客戶端程序的多樣性,而服務(wù)器端的開放和基于標(biāo)準(zhǔn)的連接方案使企業(yè)很方便地通過internet同外界聯(lián)系;同時(shí),web信息動態(tài)的、交互式的發(fā)布方式從根本上改變了企業(yè)的服務(wù)質(zhì)量,增加了企業(yè)的商業(yè)機(jī)會。
在許多用戶看來,一個(gè)web網(wǎng)站的成敗主要在于它所提供的內(nèi)容和功能,而支持這些內(nèi)容和功能的web服務(wù)器起著非常重要的作用。

2、tomcat容器
tomcat是一個(gè)免費(fèi)的開源的serlvet容器,它是apache基金會的jakarta項(xiàng)目中的一個(gè)核心項(xiàng)目,由apache,sun和其它一些公司及個(gè)人共同開發(fā)而成。由于有了sun的參與和支持,最新的servlet和jsp規(guī)范總能在tomcat中得到體現(xiàn)。
tomcat是穩(wěn)固的獨(dú)立的web服務(wù)器與servlet container,不過,其web服務(wù)器的功能則不如許多更健全的web服務(wù)器完整,如apache web服務(wù)器(舉例來說,tomcat沒有大量的選擇性模塊)。不過,tomcat是自由的開源軟件,而且有許多高手致力于其發(fā)展。

2.1 linux下安裝tomcat
在安裝tomcat之前需要安裝j2sdk(java 2 software development kit),安裝j2sdk的步驟如下:
1)到http://www.java.sun.com下載j2sdk ,如j2sdk-1_4_2_04-linux-i586-rpm.bin。

2)在終端中轉(zhuǎn)到j(luò)2sdk-1_4_2_04-linux-i586-rpm.bin所在的目錄,輸入命令chmod +x j2sdk-1_4_2_04-linux-i586-rpm.bin,添加執(zhí)行的權(quán)限。

3)執(zhí)行命令./j2sdk-1_4_2_04-linux-i586-rpm.bin,生成j2sdk-1_4_2_04-linux-i586.rpm的文件。

4)執(zhí)行命令chmod +x j2sdk-1_4_2_04-linux-i586.rpm,給j2sdk-1_4_2_04-linux-i586.rpm添加執(zhí)行的權(quán)限。

5)執(zhí)行命令 rpm –ivh j2sdk-1_4_2_04-linux-i586.rpm ,安裝j2sdk。

6)安裝界面會出現(xiàn)授權(quán)協(xié)議,按enter鍵接受,把j2sd安裝在/usr/java/j2sdk1.4.2_04。

7)設(shè)置環(huán)境變量,在 /etc/profile.d/目錄下建立文件java.sh,文件的內(nèi)容如下:
#set java environment
export java_home=/usr/java/j2sdk1.4.2_04
export classpath=.:$java_home/lib:$java_home/jre/lib:/usr/java/jdbc
export path=$java_home/bin:$java_home/jre/bin:$path

8)執(zhí)行命令chmod 755 /etc/profile.d/java.sh,給java.sh分配權(quán)限。

9)在終端中分別執(zhí)行命令javac –help和java –version,如果看到有關(guān)的信息,則表示j2sdk已成功安裝。

    接下來安裝tomcat,安裝tomcat的步驟如下:
1)訪問http://jakarta.apache.org/tomcat/index.html,下載二進(jìn)制版的tomcat,如jakarta-tomcat-5.5.10.tar.gz,解壓到/usr/local目錄:
cd /usr/local
gzip –zxvf jakarta-tomcat-5.5.10.tar.gz

2)修改$tomcat/bin/startup.sh和shutdown.sh文件,
export java_home=/usr/java/j2sdk1.4.2_04
export catalina_home=/usr/local/tomcat-5.5.10
export classpath=.:$java_home/lib:$java_home/jre/lib:/usr/java/jdbc
export path=$java_home/bin:$java_home/jre/bin:$path

3)執(zhí)行startup.sh即可在http://localhost:8080/ 訪問到tomcat的缺省面頁.

2.2單獨(dú)運(yùn)行tomcat的優(yōu)點(diǎn)
1)容易架設(shè)。下載tomcat,設(shè)定一些配置,就完成了。不需要花費(fèi)時(shí)間將web服務(wù)器的連接器整合至其它的web服務(wù)器中。
2)不需要擔(dān)心連接器。永遠(yuǎn)不需要排除在其它web服務(wù)器與tomcat之間的任何性能或聯(lián)機(jī)方面的問題。
3)有較佳的安全防護(hù)。相對于其它以c、c++所編寫的web服務(wù)器,tomcat比較能忍受遠(yuǎn)程緩沖區(qū)溢位的攻擊。因?yàn)閠omcat的java虛擬機(jī)是位于網(wǎng)絡(luò)及操作系統(tǒng)之間,它可以防止幾乎所有類型的緩沖區(qū)溢位攻擊。使用tomcat的安全防護(hù)領(lǐng)域,可以指定對各個(gè)資源的訪問。
4)容易移植。可以將tomcat服務(wù)器(以及應(yīng)用程序)移植到不同的服務(wù)器、操作系統(tǒng)甚至架構(gòu)上。因?yàn)閠omcat是以java編寫的,因此可以將其整個(gè)目錄結(jié)構(gòu)的內(nèi)容復(fù)制到其它計(jì)算機(jī)上運(yùn)行,而完全不需要任何改變,甚至于新的計(jì)算機(jī)的架構(gòu)與原來的不同也一樣。

2.3單獨(dú)運(yùn)行tomcat的缺點(diǎn)
1)tomcat的支持軟件比較少。tomcat內(nèi)建web服務(wù)器的支持軟件比apache httpd web服務(wù)器少。
2)tomcat的web服務(wù)器功能少。相對于tomcat web服務(wù)器,apache httpd服務(wù)器有更完整的功能。
3)雖然tomcat運(yùn)行速度快,但還沒有apache httpd快。tomcat服務(wù)器比apache httpd慢,不過,它還在改進(jìn)中,而且仍然非常快,快到足以運(yùn)行今日大多數(shù)的企業(yè)網(wǎng)站,只是在提供靜態(tài)頁面內(nèi)容上沒有apache快。

3、apache web服務(wù)器
apache是根據(jù)ncsa的服務(wù)器發(fā)展而來的,ncsa是最早出現(xiàn)的web服務(wù)器程序之一,由伊利諾斯大學(xué)urbana-champaign分校的美國國家超級計(jì)算應(yīng)用中心開發(fā)。在發(fā)展初期,apache主要是一個(gè)基于unix系統(tǒng)的服務(wù)器,它的宗旨就是建成一個(gè)基于unix系統(tǒng)的、功能更強(qiáng)、效率更高并且速度更快的www服務(wù)器,這就決定了它是從其他的服務(wù)器演變而來的,并且添加了大量補(bǔ)丁來增強(qiáng)它在某一方面的性能,所以它就被命名為“apa+chy server(一個(gè)補(bǔ)丁組成的服務(wù)器)”。發(fā)展到今天,apache已經(jīng)被移植到很多平臺上了。
apache的開發(fā)遵循gpl協(xié)議,由全球的志愿者一起開發(fā)和維護(hù)。在保持強(qiáng)大的功能及不斷更新的同時(shí),它仍然是免費(fèi)的,并且公開源代碼。

3.1 安裝apache服務(wù)器
可以通過以下三種方法安裝apache服務(wù)器。
1)如果安裝的linux版本中帶用apache的話,就在選擇所要安裝的服務(wù)器的時(shí)候,將httpd這個(gè)服務(wù)選上,linux安裝程序?qū)⒆詣油瓿蒩pache的安裝工作,并做好基本的配置。
2)使用可執(zhí)行文件軟件包,這比較適合那些對編譯工作不是太熟悉的初級用戶,因?yàn)樗鄬Ρ容^簡單。下載軟件包apache_1.2.4.e.tar.gz ,執(zhí)行命令tar xvzf apache_1.2.4.e.tar.gz 完成安裝工作。如果使用的是redhat linux的話,也可以下載apache_1.2.4.rpm軟件安裝包,然后使用rpm –ivh apache_1.2.4.rpm命令安裝。
3)如果想把a(bǔ)pache服務(wù)器充分利用起來的話,就一定要自己編譯apache 定制其功能。 下載包含apache源代碼的軟件包apache_1.2.4.tar.gz;然后用tar命令將它解開;將當(dāng)前目錄改變?yōu)閍pache源代碼發(fā)行版的src目錄;將配置樣本文件(configuration.tmpl)復(fù)制為configuration文件;編輯configuration文件中的配置選項(xiàng):
makefile配置選項(xiàng):一些編譯選項(xiàng):
. “cc=”一行指定用什么編譯軟件編譯,一般為“cc=gcc”;如果需要將額外的標(biāo)志(參數(shù))指定給c編譯軟件,可以使用:
extra_cflags=
extra_lflags=
如果系統(tǒng)需要特殊的庫和包含文件,可以在這里指定它們:
extra_libs=
extra_includes=
如果要改變代碼優(yōu)化設(shè)置的話,須將下面一句去掉注釋,然后改成所需要的值:
#optim=-o2

rule配置選項(xiàng):用來決定需要什么功能,一般情況下無需改變。

模塊配置:模塊是apache的組成部分,它為apache內(nèi)核增加新功能。通過使用模塊配置,可以自定義在apache服務(wù)器中需要什么功能,這個(gè)部分也是apache靈活性的表現(xiàn)。模塊配置行如下所示:
addmodule modules/standard/mod_env.o
如果需要apache服務(wù)器具備什么功能,就將那個(gè)模塊用addmodule語句加到配置文件configuration中去。
下面列出了apache的模塊功能:
模塊名    功能 缺省
mod_access    提供基于主機(jī)的訪問控制命令   y
mod_actions   能夠運(yùn)行基于mime類型的cgi腳本或http請求方法         y
mod_alias   能執(zhí)行url重定向服務(wù)  y
mod_asis    使文檔能在沒有http頭標(biāo)的情況下被發(fā)送到客戶端    y
mod_auth    支持使用存儲在文本文件中的用戶名、口令實(shí)現(xiàn)認(rèn)證    y
mod_auth_dbm   支持使用dbm文件存儲基本http認(rèn)證    n
mod_auth_mysql   支持使用mysql數(shù)據(jù)庫實(shí)現(xiàn)基本http認(rèn)證 n
mod_auth_anon   允許以匿名方式訪問需要認(rèn)證的區(qū)域       y
mod_auth_external   支持使用第三方認(rèn)證  n
mod_autoindex   當(dāng)缺少索引文件時(shí),自動生成動態(tài)目錄列表    y
mod_cern_meta   提供對元信息的支持  n
mod_cgi    支持cgi  y
mod_dir    能夠重定向任何對不包括尾部斜杠字符命令的請求    y
mod_env       使你能夠?qū)h(huán)境變量傳遞給cgi或ssi腳本    n
mod_expires    讓你確定apache在服務(wù)器響應(yīng)請求時(shí)如何處理expires     y
mod_headers    能夠操作http應(yīng)答頭標(biāo)       y
mod_imap    提供圖形映射支持  n
mod_include    使支持ssi  n
mod_info       對服務(wù)器配置提供了全面的描述       y
mod_log_agent    允許在單獨(dú)的日志文件中存儲用戶代理的信息    n
mod_log_config   支持記錄日志       y
mod_log_referer     提供了將請求中的referer頭標(biāo)寫入日志的功能    n
mod_mime    用來向客戶端提供有關(guān)文檔的元信息   y
mod_negotiation   提供了對內(nèi)容協(xié)商的支持       y
mod_setenvif    使你能夠創(chuàng)建定制環(huán)境變量       y
mod_speling    使你能夠處理含有拼寫錯(cuò)誤或大小寫錯(cuò)誤的url請求     n
mod_status    允許管理員通過web管理apache       y
mod_unique_id 為每個(gè)請求提供在非常特殊的條件下保證是唯一的標(biāo)識  n
在src目錄下執(zhí)行:“. /configure”;
編譯apache:執(zhí)行命令“make”;
將編譯好的可執(zhí)行文件httpd復(fù)制到/etc/httpd/bin目錄下;將apache發(fā)行版的配置文件:access.conf、httpd.conf、mime.types、srm.conf文件復(fù)制到/etc/httpd/conf目錄下。到此為止,安裝完成。

3.1單獨(dú)運(yùn)行apache httpd的優(yōu)點(diǎn)
   1)apache httpd比tomcat內(nèi)建的web服務(wù)器快。
   2)較多的軟件支持。apache httpd有龐大的支持軟件鏈接庫。
3)啟動與停止快。一般來說,apache httpd的啟動與停止時(shí)間都比tomcat短。

3.2單獨(dú)運(yùn)行apache httpd的缺點(diǎn)
   1)架設(shè)比較困難。比起單獨(dú)運(yùn)行tomcat,安裝apache web服務(wù)器并讓它與tomcat協(xié)同運(yùn)行要復(fù)雜很多。
   2)會拖慢動態(tài)網(wǎng)頁內(nèi)容的服務(wù)。
   3)安全漏洞。apache httpd比較容易受到緩沖區(qū)溢位的攻擊。
   4)升級比較復(fù)雜。

4、tomcat與apache的整合
有幾種將tomcat整合到apache httpd web服務(wù)器的方法:
1)架使用不同的端口號分擔(dān)負(fù)載。
該方法是最容易實(shí)現(xiàn)的,只需要在現(xiàn)成的網(wǎng)頁目錄中假如url以連接到在同一臺web服務(wù)器機(jī)器上的tomcat web服務(wù)器端口(如8080)。實(shí)際上還是執(zhí)行兩個(gè)完整的web服務(wù)器程序,彼此之間并沒有真正的整合。

2)從apache將請求發(fā)送至tomcat的代理服務(wù)器。
該方法會在主服務(wù)器中使用http的代理機(jī)制。代理機(jī)制常會用來將來自網(wǎng)關(guān)上運(yùn)行的web服務(wù)器的web信息流重新路由至外部因特網(wǎng)上的網(wǎng)站。不過,也可以用來將網(wǎng)站區(qū)域或目錄的信息流重導(dǎo)至tomcat web服務(wù)器。

3)使用mod_jk2連接器。
該方法使用運(yùn)行于現(xiàn)有的apache httpd web服務(wù)器之內(nèi)的連接器模塊(如mod_jk),并經(jīng)由特定的協(xié)議快速地將請求轉(zhuǎn)送至tomcat。這是將tomcat連接至apache httpd的標(biāo)準(zhǔn)方式。

4)       單一進(jìn)程中執(zhí)行兩個(gè)程序。
該方法通過讓jvm在apache httpd的進(jìn)程空間中運(yùn)行的方式,可以提供“完全整合”的功能。這是最有效的辦法,但也是最依賴于服務(wù)器的實(shí)現(xiàn)。

【參考文獻(xiàn)】
[1] jason brittain,ian f. darwin,tomcat: the definitive guide,2003
[2] jason brittain,ian f. darwin著,o’reilly taiwan譯,朱恩從改編,tomcat權(quán)威指南,2004
[3]http://www.apache.org
[4]http://www.bb.gilet.edu.cn



發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 若尔盖县| 桐乡市| 杭锦旗| 双流县| 镇雄县| 西峡县| 公主岭市| 保靖县| 嘉义市| 阳东县| 高平市| 肥东县| 滦南县| 怀仁县| 长岭县| 南川市| 满城县| 临潭县| 神池县| 额尔古纳市| 昂仁县| 阜新市| 昭平县| 邢台县| 涞源县| 克山县| 泰和县| 北票市| 兴化市| 信阳市| 福鼎市| 云梦县| 虹口区| 凌源市| 应用必备| 内丘县| 东海县| 靖州| 林西县| 偏关县| 金秀|