Tomcat服務器的安裝配置圖文教程(推薦)
現(xiàn)在將使用Tomcat的一些經(jīng)驗和心得寫到這里,作為記錄和備忘。如果有朋友看到,也請不吝賜教。
1、首先是Tomcat的獲取和安裝。
獲取當然得上Apache的官方網(wǎng)站下載,開源免費,而且?guī)捯沧銐?。下載會很快。
這是兩種不同的下載,一個是普通安裝版本,一個是解壓安裝版本。使用起來是一樣的,只是在普通安裝版本中有一些界面可提供對Tomcat的快捷設置,而且普通安裝會將Tomcat作為系統(tǒng)服務進行注冊。
2、Tomcat的運行環(huán)境搭建。
(解壓版)安裝(就是解壓)完成后如下:
Tomcat的啟動是一個bat文件(Windows下),在bin目錄下。雙擊即可。
如果啟動不成功,一般的情況是控制臺出來一下立即消失,說明Tomcat沒有找到Java的運行時環(huán)境。
簡單理解,就是Tomcat找不到JDK,沒辦法運行。
我們“告訴”它JDK的安裝路徑。即在環(huán)境變量里新建JAVA_HOME(不區(qū)分大小寫),指向JDK安裝目錄。如下:
這樣,Tomcat就配置好了,啟動就OK。
啟動Tomcat,在瀏覽器地址欄輸入http://localhost:8080/如果看到亂七八糟的關于Tomcat的介紹神馬,說明配置成功。
3、Tomcat的目錄結(jié)構(gòu)介紹。
bin目錄存放一些啟動運行Tomcat的可執(zhí)行程序和相關內(nèi)容。
conf存放關于Tomcat服務器的全局配置。
lib目錄存放Tomcat運行或者站點運行所需的jar包,所有在此Tomcat上的站點共享這些jar包。
wabapps目錄是默認的站點根目錄,可以更改。
work目錄用于在服務器運行時過度資源,簡單來說,就是存儲jsp、servlet翻譯、編譯后的結(jié)果。
其他目錄和文件暫時不做介紹。
4、Tomcat的默認行為。
我們的瀏覽器請求如果到達了Tomcat,并且請求無誤,一般Tomcat會以靜態(tài)頁面(即html文件)的形式給與響應,這是http服務器的默認行為。
一個完整的資源請求包括:
協(xié)議(如http)
主機名(域名,如localhost、www.baidu.com)
端口號(http協(xié)議默認為80,所以我們一般向某個網(wǎng)站發(fā)起請求沒有輸入)
站點
資源位置
如http://localhost:8080/ROOT/index.jsp
那么在第二步時我們只輸入了域名(或者主機名)就訪問到了某個具體的頁面,這是怎么回事呢?。
首先,請求會通過一些途徑到達請求的主機地址并被該服務器(指硬件,如我們的本機電腦)上的http服務器程序獲得。這一步解釋起來比較麻煩,我們不做贅述,我會在其他篇幅里介紹。
比如我們輸入http://localhost:8080到瀏覽器里。被Tomcat發(fā)現(xiàn)了。
現(xiàn)在它拿到請求,先分析我們所請求的是什么資源。由于我們沒有指定,它會到默認的站點去拿默認的頁面給我們。
現(xiàn)在我們把過程走一遍:
服務器端:Tomcat監(jiān)聽著8080端口,時時注意是否有請求過來。
客戶端瀏覽器發(fā)出請求,到達了服務器端,由于端口的分配,請求最終被Tomcat得到。
Tomcat解析請求的資源,發(fā)現(xiàn)沒有指定需要的是哪個站點下的哪個資源。
Tomcat在默認的站點下把默認的頁面返回給客戶端瀏覽器作為響應。
5、更改Tomcat默認配置。
①、修改Tomcat監(jiān)聽端口。
我們都有過訪問網(wǎng)站的經(jīng)歷。我們一般只輸入了域名對吧,那么假設我們現(xiàn)在作為網(wǎng)絡服務提供者,將要對外發(fā)布網(wǎng)站,我們怎么讓用戶只輸入我們的域名就能看到我們?yōu)樗?她準備的網(wǎng)頁呢?
首先我們需要將監(jiān)聽端口設置為80,道理很簡單,用戶不會在瀏覽器輸入:8080來訪問網(wǎng)站,瀏覽器也不會自動將請求發(fā)送到服務器的8080端口。
在%TOMCAT_HOME%(以下代指Tomcat的安裝路徑)下的conf目錄下的server.xml文件中修改。
這個文件里東西不少,其實大家不必在意。為什么呢?你把注釋刪除后再把整個xml看作一個對象,是吧,每個節(jié)點是一個屬性,這個屬性又可能是一個對象,它里面有屬性……要這樣去理解,或者直接認為是Tomcat的配置信息到也沒錯。
這樣,就不用輸入:8080了。
②、修改默認站點。
首先說,站點是具有特定結(jié)構(gòu)的文件夾。這一點在Tomcat里表現(xiàn)得極為清晰。
站點,在服務器上肯定是用文件夾(即目錄結(jié)構(gòu))來存儲和管理的。但是它和普通的文件夾又不同,在Tomcat里,可用于作為站點的文件夾必須有如下特點:擁有一個名為WEB-INF的子文件夾,該子文件夾下必須有一個名為web.xml的文件,而且該xml文件必須受約束與特定的DTD。
我們先配置或者說叫創(chuàng)建一個站點,再將其設置為默認站點。
配置站點:創(chuàng)建文件夾,創(chuàng)建WEB-INF子文件夾,創(chuàng)建web.xml,完成。web.xml內(nèi)容可以參考webapps/ROOT/WEB-INF/web.xml。
設置為默認站點:
這里需要分為兩步執(zhí)行。
告訴Tomcat當請求哪個站點時(或者說在域名后面跟的是什么名字),你來找我。
告訴Tomcat我在哪里。
上圖已經(jīng)將兩步配置好了(實際上Tomcat默認加上了將空站點指向ROOT的代碼),我們的d:/myweb:
如果你的站點存放在webapps目錄下,可以使用相對路徑,比如,我們將d:/myweb整個拷到%TOMCAT_HOME%/webapps下,上圖的docBase很明顯就不需要加上d:/了。
我在index.html里寫了幾句話,然后結(jié)果出來了:
?、?、修改默認頁面。
在上面,我們還算是中規(guī)中矩,按照常理出牌,謝了index.html。那么如果沒有寫呢?Tomcat會怎么做呢?
請大家找到conf/web.xml。這個文件是對所有站點的共同屬性做出了設置。比如大家看文件結(jié)尾處:
這個叫做歡迎頁面,當沒有輸入資源地址時,會由上至下地查找,獲取頁面,進行響應。
很清楚了吧,改動它就可以,但是不建議在這里改,會是所有站點設置變化,你應該將其復制到你需要改動的站點下的web.xml,進行設置。
6、虛擬主機的配置。
所謂虛擬主機,就是將一個或多個主機名(域名)和Tomcat所在的服務器進行綁定。由于一個IP可以和多個域名進行幫定,我們大可以將不同的域名指向服務器(指硬件)上的不同文件夾,造成一個服務器(或者一個IP)多個主機的“虛擬主機”效果。
這個實現(xiàn)起來相當?shù)暮唵?。只需要在server.xml文件中新建Host節(jié)點,將其屬性進行不同設置即可。
#你的主機名(域名)1 <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> </Host> #你的域名2 <Host name="www.coderecord.org" appBase="主機空間地址" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> #域名3可以和域名2共用一個主機空間 <Alias>coderecord.org</Alias> <Context path="" docBase="站點地址" debug="1" reloadable="true" allowLinking="true" /> </Host>
以上配置信息根據(jù)Tomcat的版本不同而不同。
本篇隨筆對Tomcat的安裝、環(huán)境搭建、虛擬目錄、虛擬主機配置都有淺陋的見解,忘大家指正。
相關文章
MIME類型大全(response.setContentType中MIME參數(shù)類型總結(jié))
MIME類型就是設定某種擴展名的文件用一種應用程序來打開的方式類型,當該擴展名文件被訪問的時候,瀏覽器會自動使用指定應用程序來打開。多用于指定一些客戶端自定義的文件名,以及一些媒體文件打開方式2017-07-07Deployment副本無狀態(tài)服務創(chuàng)建及水平擴展
這篇文章主要為大家介紹了Deployment副本無狀態(tài)服務及水平擴展,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-03-03Ajenti開源免費的服務器管理面板和Ajenti V虛擬主機面板及安裝與使用詳細教程
Ajenti是國外一個功能非常強大的輕型的Linux服務器管理面板,采用Python架構(gòu),修改擴展非常簡單,Ajenti V是Ajenti一個虛擬主機管理面板插件,下面通過本文給大家介紹Ajenti開源免費的服務器管理面板和Ajenti V虛擬主機面板及安裝與使用詳細教程,一起看看吧2017-07-07微服務架構(gòu)之服務注冊與發(fā)現(xiàn)功能詳解
這篇文章主要為大家介紹了微服務架構(gòu)之服務注冊與發(fā)現(xiàn)的功能詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪2022-01-01