1. 程式人生 > >使用Tomcat的一些經驗和心得

使用Tomcat的一些經驗和心得

全部 oot web 結構 logs linking 多個 code 如果

如今將使用Tomcat的一些經驗和心得寫到這裏。作為記錄和備忘。假設有朋友看到,也請指教。

  1、首先是Tomcat的獲取和安裝。

    獲取當然得上Apache的官方站點下載,開源免費。並且帶寬也足夠。下載會非常快。

  技術分享

    這是兩種不同的下載,一個是普通安裝版本號,一個是解壓安裝版本號。

使用起來是一樣的,僅僅是在普通安裝版本號中有一些界面可提供對Tomcat的快捷設置,並且普通安裝會將Tomcat作為系統服務進行註冊。

  2、Tomcat的執行環境搭建。

    (解壓版)安裝(就是解壓)完畢後例如以下:

  技術分享

    Tomcat的啟動是一個bat文件(Windows下),在bin文件夾下。雙擊就可以。

    假設啟動不成功。一般的情況是控制臺出來一下馬上消失。說明Tomcat沒有找到Java的執行時環境。

    簡單理解。就是Tomcat找不到JDK,沒辦法執行。

    我們“告訴”它JDK的安裝路徑。即在環境變量裏新建JAVA_HOME(不區分大寫和小寫),指向安裝JDK文件夾。例如以下:

  技術分享

    這樣,Tomcat就配置好了,啟動就OK。

    啟動Tomcat,在瀏覽器地址欄輸入http://localhost:8080/假設看到亂七八糟的關於Tomcat的介紹神馬。說明配置成功。

   3、Tomcat的文件夾結構介紹。

      bin文件夾存放一些啟動執行Tomcat的可執行程序和相關內容。

      conf存放關於Tomcatserver的全局配置。

      lib文件夾存放Tomcat執行或者網站執行所需的jar包,全部在此Tomcat上的網站共享這些jar包

      wabapps文件夾是默認的網站根文件夾,能夠更改。

      work文件夾用於在server執行時過度資源,簡單來說。就是存儲jsp、servlet翻譯、編譯後的結果。

      其它文件夾和文件臨時不做介紹。

  4、Tomcat的默認行為。

      我們的瀏覽器請求假設到達了Tomcat。而且請求無誤,一般Tomcat會以靜態頁面(即html文件)的形式給與響應,這是httpserver的默認行為。

      一個完整的資源請求包含:

      協議(如http)

      主機名(域名。如localhost、www.baidu.com)

      port號(http協議默覺得80。所以我們一般向某個站點發起請求沒有輸入)

      網站

      資源位置

        如http://localhost:8080/ROOT/index.jsp

      那麽在第二步時我們僅僅輸入了域名(或者主機名)就訪問到了某個詳細的頁面,這是怎麽回事呢?。

      首先。請求會通過一些途徑到達請求的主機地址並被該server(指硬件。如我們的本機電腦)上的httpserver程序獲得。這一步解釋起來比較麻煩,我們不做贅述,我會在其它篇幅裏介紹。

      比方我們輸入http://localhost:8080到瀏覽器裏。被Tomcat發現了。

      如今它拿到請求,先分析我們所請求的是什麽資源。

因為我們沒有指定。它會到默認的網站去拿默認的頁面給我們。

      如今我們把過程走一遍:

        server端:Tomcat監聽著8080port,時時註意是否有請求過來。

        client瀏覽器發出請求,到達了server端,因為port的分配,請求終於被Tomcat得到。

        Tomcat解析請求的資源,發現沒有指定須要的是哪個網站下的哪個資源。

        Tomcat在默認的網站下把默認的頁面返回給client瀏覽器作為響應。

  

  5、更改Tomcat默認配置。

     ①、改動Tomcat監聽port。

        我們都有過訪問站點的經歷。我們一般僅僅輸入了域名對吧。那麽如果我們如今作為網絡服務提供者。將要對外公布站點,我們怎麽讓用戶僅僅輸入我們的域名就能看到我們為他/她準備的網頁呢?

        首先我們須要將監聽port設置為80。道理非常easy,用戶不會在瀏覽器輸入:8080來訪問站點,瀏覽器也不會自己主動將請求發送到server的8080port。

        在%TOMCAT_HOME%(下面代指Tomcat的安裝路徑)下的conf文件夾下的server.xml文件裏改動。

  技術分享

      這個文件中東西不少,事實上大家不必在意。為什麽呢?你把凝視刪除後再把整個xml看作一個對象。是吧,每一個節點是一個屬性,這個屬性又可能是一個對象。它裏面有屬性……要這樣去理解,或者直接覺得是Tomcat的配置信息到也沒錯。

      這樣,就不用輸入:8080了。

    ②、改動默認網站。

      首先說,網站是具有特定結構的目錄。這一點在Tomcat裏表現得極為清晰。

      網站。在server上肯定是用目錄(即目錄結構)來存儲和管理的。可是它和普通的目錄又不同。在Tomcat裏,可用於作為網站的目錄必須有例如以下特點:擁有一個名為WEB-INF的子目錄。該子目錄下必須有一個名為web.xml的文件,並且該xml文件必須受約束與特定的DTD。

      

      我們先配置或者說叫創建一個網站,再將其設置為默認網站。

        配置網站:創建目錄,創建WEB-INF子目錄,創建web.xml,完畢。web.xml內容能夠參考webapps/ROOT/WEB-INF/web.xml。

        設置為默認網站:

          這裏須要分為兩步運行。

            告訴Tomcat當請求哪個網站時(或者說在域名後面跟的是什麽名字),你來找我。

            告訴Tomcat我在哪裏。

  技術分享

            上圖已經將兩步配置好了(實際上Tomcat默認加上了將空網站指向ROOT的代碼)。我們的d:/myweb:

            假設你的網站存放在webapps文件夾下,能夠使用相對路徑,比方,我們將d:/myweb整個拷到%TOMCAT_HOME%/webapps下。上圖的docBase非常明顯就不須要加上d:/了。

  技術分享

            我在index.html裏寫了幾句話。然後結果出來了:

  技術分享

    ③、改動默認頁面。

      在上面。我們還算是中規中矩。依照常理出牌,謝了index.html。

那麽假設沒有寫呢?Tomcat會怎麽做呢?

      請大家找到conf/web.xml。

這個文件是對全部網站的共同屬性做出了設置。

比方大家看文件結尾處:

  技術分享

      這個叫做歡迎頁面。當沒有輸入資源地址時,會由上至下地查找,獲取頁面。進行響應。

      非常清楚了吧。修改它就能夠。可是不建議在這裏改,會是全部網站設置變化,你應該將其拷貝到你須要修改的網站下的web.xml,進行設置。

   6、虛擬主機的配置。

      所謂虛擬主機,就是將一個或多個主機名(域名)和Tomcat所在的server進行綁定。因為一個IP能夠和多個域名進行幫定,我們大能夠將不同的域名指向server(指硬件)上的不同目錄。造成一個server(或者一個IP)多個主機的“虛擬主機”效果。

      這個實現起來相當的簡單。

僅僅須要在server.xml文件裏新建Host節點。將其屬性進行不同設置就可以。

技術分享
 1 #你的主機名(域名)1
 2 <Host name="localhost"  appBase="webapps"
 3            unpackWARs="true" autoDeploy="true"
 4            xmlValidation="false" xmlNamespaceAware="false"> 
 5 </Host> 
 6 #你的域名2
 7 <Host name="www.coderecord.org" appBase="主機空間地址" 
 8        unpackWARs="true" autoDeploy="true" 
 9        xmlValidation="false" xmlNamespaceAware="false">  
10        #域名3能夠和域名2共用一個主機空間
11         <alias>coderecord.org</alias>
12         <Context path="" docBase="網站地址" debug="1" reloadable="true" allowLinking="true" />
13 </Host> 
技術分享

      以上配置信息依據Tomcat的版本號不同而不同。

使用Tomcat的一些經驗和心得