中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

tomcat虛擬主機怎么配置

發布時間:2022-05-10 10:26:31 來源:億速云 閱讀:214 作者:iii 欄目:大數據

本文小編為大家詳細介紹“tomcat虛擬主機怎么配置”,內容詳細,步驟清晰,細節處理妥當,希望這篇“tomcat虛擬主機怎么配置”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

對于tomcat服務器,可以放置多個網站(多個web應用),這就是講配置多個虛擬主機,可以看成好像有多個主機,而每個主機上有一個web應用。如同之前的文章所說的,對于tomcat服務器來講,在server.xml文件中,一個<host>標簽就代表著一臺虛擬主機,之前的文章所用的都是默認的虛擬主機,這個在server.xml文件中是這樣定義的:

<host name="localhost" appbase="webapps" autodeploy="true" unpackwars="true">
...
</host>

可以看到這個已有的虛擬主機的名稱(“localhost”)正好是瀏覽器訪問本機的回環地址的主機名,appbase屬性是存放web應用的目錄,autodeploy指是否自動部署,unpackwars指是否自動解壓war包,如果為false則不解壓直接從war包中運行應用程序。

  而我們想配置多個虛擬主機也是這樣,在server.xml文件中添加<host>標簽,指定name屬性和appbase屬性之后,再添加web應用。

  通常配置虛擬主機方式與網站域名比較相關,而我沒有有域名的網址,因此直接修改hosts文件將域名重定向作為學習在服務器中虛擬主機的添加和配置。

  修改tomcat服務器中的server.xml文件,添加<host>標簽,name屬性采取“域名”的方式,并將該虛擬主機存放web應用的目錄【fjdingsd】放在非tomcat所在的【d】盤下:

<host name="www.fjdingsd.com" appbase="d:\fjdingsd" autodeploy="true" unpackwars="true">
</host>

tomcat虛擬主機怎么配置

   【news】目錄中:  

tomcat虛擬主機怎么配置

當在server.xml中添加好虛擬主機之后,直接將web應用放置在對應的虛擬主機存放web應用目錄,注意,這里是由<host>標簽中appbase定義的d盤下【fjdingsd】目錄,而我的web應用【news】就應該放這其中,在我的web應用所在目錄中有自定義的home.html文件。

現在就是需要將定義的虛擬主機名和ip綁定,因為沒有向dns服務器注冊,所以我就使用hosts文件中將我的虛擬主機名與本機ip地址綁定:  

tomcat虛擬主機怎么配置

這樣啟動tomcat服務器,在瀏覽器中輸入,可以看到: 

tomcat虛擬主機怎么配置 

這樣就配置好了一個虛擬主機,并且在這虛擬主機中還有web應用。

  這里只是小試一下對tomcat服務器的虛擬主機配置,而如果想真正讓外界訪問我們配置的虛擬主機(網站),應該向dns服務器注冊域名才行。

  不管在tomcat服務器中添加了多少個虛擬主機,最終都是轉為ip地址向服務器訪問。這里就會有一個問題,如果每個web應用都設置了首頁,而又不在瀏覽器中輸入域名,而是直接通過ip地址打開,那么服務器怎么知道應該是去哪個虛擬主機尋求資源呢?

  答案就在tomcat服務器的引擎<engine>上,由server.xml文件中的<engine>標簽定義了tomcat服務器的默認虛擬主機:

<engine defaulthost="localhost" name="catalina">
 ...
 <host name="localhost" ...> </host>
 <host name="www.fjdingsd.com" ...> </host>
 ...
</engine>

因此如果我想改變tomcat服務器的默認虛擬主機,就修改<engine>標簽中的“defaulthost”屬性。

================================================================

  如果要將開發好的web應用部署到遠程服務器中,可以將web應用進行壓縮成war格式,再進行傳輸,在tomcat服務器運行的過程中,如果在其存放web應用的目錄中檢測到新增的war包,則會進行自動解壓并部署(<host>中的unpackwars屬性和autodeploy屬性)。這種方式最適合向遠程服務器進行新的web應用傳遞并管理。
  那么如何對開發好的web應用進行war打包呢:

      在cmd中鍵入 “jar -cvf  應用名.war  應用名”。

如我的web應用為d盤下【fjdingsd】目錄中的【news】目錄,那么我在cmd中就該這么輸入:jar  -cvf  news.war  news 

tomcat虛擬主機怎么配置

并得到了war文件: 

tomcat虛擬主機怎么配置 

然后將這個news.war往tomcat的【webapps】目錄中一放,過幾秒后tomcat就會對其自動解壓,tomcat服務器一定要先打開才會看到自動解壓的過程。

tomcat虛擬主機怎么配置

   過3、4秒后:  

tomcat虛擬主機怎么配置

如果在tomcat運行的過程中,將已經自動解壓的war包刪除,則過幾秒tomcat也會自動將解壓后的web應用刪除,這點請注意。

  如果是在tomcat服務器未啟動之前,將war包放入【webapps】目錄中,那么tomcat啟動后會自動解壓并部署。

  如果在是tomcat解壓的war包,而在將tomcat關閉后再刪除war包,那么在此啟動tomcat后之前由war包解壓出來的web應用不會被刪除。

tomcat的體系結構  

  tomcat的體系結構可以從其最重要的server.xml文件中進行結構分析,下圖是一張tomcat的體系結構圖:

tomcat虛擬主機怎么配置  

結合server.xml文件可以看到:  

tomcat虛擬主機怎么配置

  tomcat啟動后,也就是服務器(<server>標簽),啟動后也會啟動一些監聽器(<listener>)和一些全局命名資源(<globalnamingresources>)。

  除了服務器(<server>標簽)被啟動后,還會啟動“服務”(<service>),正如在cmd中鍵入的“services.msc”的那種。 

tomcat虛擬主機怎么配置 

  在服務(<service>)下會有各種連接器(<connector>),如上面體系結構圖所示,其中和瀏覽器打交道的連接器(<connector>)定義了連接協議(protocol),連接端口(port),連接超時(connectiontimeout)等等屬性,當然還要別的用途的連接器。

tomcat虛擬主機怎么配置  

  在服務(<service>)下除了各種連接器(<connector>),還有一個引擎(<engine>),當瀏覽器將一些請求發來時就通過連接器(<connector>)交給引擎(<engine>),引擎(<engine>)中可以包含一個或多個虛擬主機(<host>),而引擎也規定了哪個虛擬主機是默認訪問的。 

tomcat虛擬主機怎么配置 

  引擎(<engine>)通過尋找指定的虛擬主機(<host>)將請求交給它,然后由虛擬主機(<host>)來尋找是哪個web應用,虛擬主機(<host>)定義了瀏覽器需輸入的主機名稱、web應用存放的位置,和別的一些屬性等等 

tomcat虛擬主機怎么配置 

  而至于何種web應用就要看采用哪種虛擬目錄映射了,如果是添加<context>,那么一個<context>標簽就代表一個web應用  

tomcat虛擬主機怎么配置

  或者是直接將web應用所在目錄放在<host>標簽指定的路徑,那么就沒有<context>標簽來代表該web應用

讀到這里,這篇“tomcat虛擬主機怎么配置”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

柘城县| 鄂托克旗| 秭归县| 达孜县| 明光市| 大同县| 淮安市| 郯城县| 长汀县| 油尖旺区| 延寿县| 西贡区| 潼南县| 永清县| 什邡市| 宝坻区| 灵川县| 柯坪县| 邯郸市| 朝阳县| 南康市| 宁乡县| 都兰县| 论坛| 黄骅市| 桦南县| 平邑县| 毕节市| 开平市| 武强县| 汶川县| 新泰市| 临洮县| 塔城市| 普陀区| 高邮市| 定远县| 桂林市| 广丰县| 屏山县| 积石山|