• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    Linux下Tomcat與Apache Web服務器的整合

    發布: 2007-5-25 14:12 | 作者: ITZealot | 來源: ccidnet.com | 查看: 144次 | 進入軟件測試論壇討論

    領測軟件測試網

    1、        引言
    基于Web技術的Internet/Intranet近年來已經得到了廣泛的應用,Intranet是以TCP/IP協議為基礎、以Web為核心的企業內部網,用戶通過低成本、簡單易用的客戶瀏覽器就能隨時隨地到企業的Web站點上查閱自己所需的數據。瀏覽器客戶端操作界面的一致性避免了C/S模式客戶端程序的多樣性,而服務器端的開放和基于標準的連接方案使企業很方便地通過Internet同外界聯系;同時,Web信息動態的、交互式的發布方式從根本上改變了企業的服務質量,增加了企業的商業機會。
    在許多用戶看來,一個Web網站的成敗主要在于它所提供的內容和功能,而支持這些內容和功能的Web服務器起著非常重要的作用。

    2、        Tomcat容器
    Tomcat是一個免費的開源的Serlvet容器,它是Apache基金會的Jakarta項目中的一個核心項目,由Apache,Sun和其它一些公司及個人共同開發而成。由于有了Sun的參與和支持,最新的Servlet和Jsp規范總能在Tomcat中得到體現。
    Tomcat是穩固的獨立的Web服務器與Servlet Container,不過,其Web服務器的功能則不如許多更健全的Web服務器完整,如Apache Web服務器(舉例來說,Tomcat沒有大量的選擇性模塊)。不過,Tomcat是自由的開源軟件,而且有許多高手致力于其發展。

    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)在終端中轉到j2sdk-1_4_2_04-linux-i586-rpm.bin所在的目錄,輸入命令chmod +x j2sdk-1_4_2_04-linux-i586-rpm.bin,添加執行的權限。

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

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

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

    6)安裝界面會出現授權協議,按Enter鍵接受,把j2sd安裝在/usr/java/j2sdk1.4.2_04。

    7)設置環境變量,在 /etc/profile.d/目錄下建立文件java.sh,文件的內容如下:
    #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)執行命令chmod 755 /etc/profile.d/java.sh,給java.sh分配權限。

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

        接下來安裝tomcat,安裝tomcat的步驟如下:
    1)訪問http://jakarta.apache.org/tomcat/index.html,下載二進制版的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)執行startup.sh即可在http://localhost:8080/ 訪問到tomcat的缺省面頁.

    2.2單獨運行Tomcat的優點
    1)容易架設。下載Tomcat,設定一些配置,就完成了。不需要花費時間將Web服務器的連接器整合至其它的Web服務器中。
    2)不需要擔心連接器。永遠不需要排除在其它Web服務器與Tomcat之間的任何性能或聯機方面的問題。
    3)有較佳的安全防護。相對于其它以C、C++所編寫的Web服務器,Tomcat比較能忍受遠程緩沖區溢位的攻擊。因為Tomcat的Java虛擬機是位于網絡及操作系統之間,它可以防止幾乎所有類型的緩沖區溢位攻擊。使用Tomcat的安全防護領域,可以指定對各個資源的訪問。
    4)容易移植?梢詫omcat服務器(以及應用程序)移植到不同的服務器、操作系統甚至架構上。因為Tomcat是以Java編寫的,因此可以將其整個目錄結構的內容復制到其它計算機上運行,而完全不需要任何改變,甚至于新的計算機的架構與原來的不同也一樣。

    2.3單獨運行Tomcat的缺點
    1)Tomcat的支持軟件比較少。Tomcat內建Web服務器的支持軟件比Apache httpd Web服務器少。
    2)Tomcat的Web服務器功能少。相對于Tomcat Web服務器,Apache httpd服務器有更完整的功能。
    3)雖然Tomcat運行速度快,但還沒有Apache httpd快。Tomcat服務器比Apache httpd慢,不過,它還在改進中,而且仍然非?,快到足以運行今日大多數的企業網站,只是在提供靜態頁面內容上沒有Apache快。

    3、        Apache Web服務器
    Apache是根據NCSA的服務器發展而來的,NCSA是最早出現的Web服務器程序之一,由伊利諾斯大學Urbana-Champaign分校的美國國家超級計算應用中心開發。在發展初期,Apache主要是一個基于UNIX系統的服務器,它的宗旨就是建成一個基于UNIX系統的、功能更強、效率更高并且速度更快的WWW服務器,這就決定了它是從其他的服務器演變而來的,并且添加了大量補丁來增強它在某一方面的性能,所以它就被命名為“APA+CHy Server(一個補丁組成的服務器)”。發展到今天,Apache已經被移植到很多平臺上了。
    Apache的開發遵循GPL協議,由全球的志愿者一起開發和維護。在保持強大的功能及不斷更新的同時,它仍然是免費的,并且公開源代碼。

    3.1 安裝Apache服務器
    可以通過以下三種方法安裝Apache服務器。
    1)如果安裝的Linux版本中帶用Apache的話,就在選擇所要安裝的服務器的時候,將httpd這個服務選上,Linux安裝程序將自動完成Apache的安裝工作,并做好基本的配置。
    2)使用可執行文件軟件包,這比較適合那些對編譯工作不是太熟悉的初級用戶,因為它相對比較簡單。下載軟件包apache_1.2.4.e.tar.gz ,執行命令tar xvzf apache_1.2.4.e.tar.gz 完成安裝工作。如果使用的是RedHat Linux的話,也可以下載apache_1.2.4.rpm軟件安裝包,然后使用rpm –ivh apache_1.2.4.rpm命令安裝。
    3)如果想把Apache服務器充分利用起來的話,就一定要自己編譯Apache 定制其功能。 下載包含Apache源代碼的軟件包apache_1.2.4.tar.gz;然后用tar命令將它解開;將當前目錄改變為Apache源代碼發行版的src目錄;將配置樣本文件(Configuration.tmpl)復制為Configuration文件;編輯Configuration文件中的配置選項:
    Makefile配置選項:一些編譯選項:
    . “CC=”一行指定用什么編譯軟件編譯,一般為“CC=gcc”;如果需要將額外的標志(參數)指定給C編譯軟件,可以使用:
    EXTRA_CFLAGS=
    EXTRA_LFLAGS=
    如果系統需要特殊的庫和包含文件,可以在這里指定它們:
    EXTRA_LIBS=
    EXTRA_INCLUDES=
    如果要改變代碼優化設置的話,須將下面一句去掉注釋,然后改成所需要的值:
    #OPTIM=-O2

    Rule配置選項:用來決定需要什么功能,一般情況下無需改變。

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

    3.1單獨運行Apache httpd的優點
       1)Apache httpd比Tomcat內建的Web服務器快。
       2)較多的軟件支持。Apache httpd有龐大的支持軟件鏈接庫。
    3)啟動與停止快。一般來說,Apache httpd的啟動與停止時間都比Tomcat短。

    3.2單獨運行Apache httpd的缺點
       1)架設比較困難。比起單獨運行Tomcat,安裝Apache Web服務器并讓它與Tomcat協同運行要復雜很多。
       2)會拖慢動態網頁內容的服務。
       3)安全漏洞。Apache httpd比較容易受到緩沖區溢位的攻擊。
       4)升級比較復雜。

    4、        Tomcat與Apache的整合
    有幾種將Tomcat整合到Apache httpd Web服務器的方法:
    1)        架使用不同的端口號分擔負載。
    該方法是最容易實現的,只需要在現成的網頁目錄中假如URL以連接到在同一臺Web服務器機器上的Tomcat Web服務器端口(如8080)。實際上還是執行兩個完整的Web服務器程序,彼此之間并沒有真正的整合。

    2)        從Apache將請求發送至Tomcat的代理服務器。
    該方法會在主服務器中使用HTTP的代理機制。代理機制常會用來將來自網關上運行的Web服務器的Web信息流重新路由至外部因特網上的網站。不過,也可以用來將網站區域或目錄的信息流重導至Tomcat Web服務器。

    3)        使用mod_jk2連接器。
    該方法使用運行于現有的Apache httpd Web服務器之內的連接器模塊(如mod_jk),并經由特定的協議快速地將請求轉送至Tomcat。這是將Tomcat連接至Apache httpd的標準方式。

    4)       單一進程中執行兩個程序。
    該方法通過讓JVM在Apache httpd的進程空間中運行的方式,可以提供“完全整合”的功能。這是最有效的辦法,但也是最依賴于服務器的實現。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>