大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

Tomca教程
Tomcat Manager
Tomcat Realm 配置
Tomcat 安全管理
Tomcat JNDI 資源
Tomcat JDBC 數據源
Tomcat 類加載機制
Tomcat JSPs
Tomcat SSL/TLS配置
Tomcat SSI
Tomcat CGI
Tomcat 代理支持
Tomcat MBean 描述符
Tomcat 默認 Servlet
Tomcat 集群
Tomcat 連接器
Tomcat監控與管理
Tomcat 日志機制
Tomcat 基于 APR 的原生庫
Tomcat 虛擬主機
Tomcat 高級 IO 機制
Tomcat 附加組件
Tomcat 安全性注意事項
Tomcat Windows 服務
Tomcat Windows 認證
Tomcat 的 JDBC 連接池
Tomcat WebSocket 支持
Tomcat 重寫機制

Tomcat 應用部署

本章概述

部署這個術語描述的就是,將 Web 應用(第三方的 WAR 文件,或是你自己定制的 Web 應用)安裝到 Tomcat 服務器上的整個過程。

Tomcat 服務器上,可以通過多種方法部署 Web 應用:

  • 靜態部署。在啟動 Tomcat 之前安裝 Web 應用。
  • 動態部署。使用 Tomcat 的 Manager 應用直接操控已經部署好的 Web 應用(依賴 auto-deployment 特性)。

Tomcat Manager 是一種能交互使用(利用 HTML GUI)的 Web 應用,還可以利用編程的方式(通過基于 URL 的 API)來部署并管理 Web 應用。

依靠 Manager 這種 Web 應用,可以實施多種部署。Tomcat 為 Apache Ant 構建工具提供了多個任務。 Apache Tomcat Maven Plugin 工程則提供了與 Apache Maven 的集成。另外還有一種工具叫做客戶端配置器 (Client Deployer,TCD),它通過命令行來使用,提供一些額外的功能,比如編譯與驗證 Web 應用,以及將 Web 應用打包成 Web 應用資源(WAR)文件。

安裝

靜態部署 Web 應用時,并不需要附加的安裝,因為 Tomcat 已經提供了這項功能。利用 Tomcat Manager 部署應用也不需要任何安裝,不過需要進行一番配置,詳見Tomcat Manager 手冊。如果使用客戶端配置器的話,就必須要進行安裝了。

Tomcat 的核心分發版并不包括 TCD,必須從下載區獨立下載它,下載文件通常冠名為:apache-tomcat-8.0.x-deployer

要想使用 TCD,必須事先配置有 Apache Ant 1.6.2+ 以及 Java 安裝。另外,還必須定義一個指向 ANT 安裝根目錄的 ANT_HOME 環境變量,以及一個指向 Java 安裝目錄的 JAVA_HOME 值。另外,還必須確保必須在操作系統所提供的命令 shell 中運行 ANT 的 ant 命令,以及 Java 的 javac 編譯器命令。

  1. 下載 TCD 分發版;
  2. TCD 包可以解壓縮到任何地方,不需要解壓縮到任何已存在的 Tomcat 安裝下。
  3. 相關用法,參考下文的使用客戶端部署器進行部署

關于上下文

在談到 Web 應用的配置時,需要理解一下上下文Context)這個概念。上下文在 Tomcat 中其實就是 Web 應用的意思。

為了在 Tomcat 中配置上下文,需要用到上下文描述符文件 Context Descriptor)。

上下文描述符文件其實就是一個 XML 文件,含有 Tomcat 與上下文相關的配置信息,例如命名資源或會話管理器配置信息。在 Tomcat 的早期版本中,上下文描述符文件配置的內容經常保存在 Tomcat 的主要配置文件 server.xml 中,但現在不再推薦采用這一方式(雖然目前它依然有效)。

上下文描述符文件不僅能幫助 Tomcat 了解如何配置上下文,而且其他工具(如 Manager 與 TCD)也經常會借助上下文描述符文件來正確履行它們的職責。

上下文描述符文件位于:

1.$CATALINA_BASE/conf/[enginename]/[hostname]/[webappname].xml

2.$CATALINA_BASE/webapps/[webappname]/META-INF/context.xml

在目錄 1 中的文件名為 [webappname].xml但在目錄 2 中,文件名為 context.xml。如果某個 Web 應用沒有相應的上下文描述符文件,Tomcat 就會使用默認值配置該應用。

Tomcat 啟動時進行部署

如果你對使用 Manager 或 TCD 不是很感興趣,那就需要先把 Web 應用靜態地部署到 Tomcat 中,然后再啟動 Tomcat。

這種情況下應用部署的位置由 appBase 目錄屬性來決定,每臺主機都指定有這樣一個位置。該位置既可以放入未經壓縮的 Web 應用資源文件(通常被稱為 exploded web application,“膨脹 Web 應用”),也可以放置已壓縮過的 Web 應用資源文件(.WAR 文件)。

再次解釋一下,應用部署位置由主機(默認主機為 localhost)的 appBase 屬性來指定。默認的 appBase 屬性所指定的目錄為 $CATALINA_BASE/webapps。只有當主機的 deployOnStartup 屬性為 true, 應用才會在 Tomcat 啟動時進行自動部署。

在以上情況下,當 Tomcat 啟動時,部署的具體步驟如下:

  • 先部署上下文描述符文件。
  • 然后再對沒被任何上下文描述符文件引用過的膨脹 Web 應用進行部署。 如果在 appBase 中已存在與這種應用有關的 .WAR 文件,而且要比膨脹應用文件更新,那么就會將膨脹應用的文件夾清除,轉而從 .WAR 文件中部署 Web 應用。
  • 部署 .WAR 文件。

在運行中的 Tomcat 服務器上進行動態應用部署

除了靜態部署之外,也可以在運行中的 Tomcat 服務器上進行應用部署。

如果主機的 autoDeploy 屬性為 true,主機就會在必要時嘗試著動態部署并更新 Web 應用。 例如,當把一個新 .WAR 文件放入 appBase 所指定的名錄時。為了實現這種操作,主機就需要啟用后臺處理,當然這也是默認的配置。

 autoDeploy 設置為 true 時,運行中的 Tomcat 服務器能夠允許實現以下行為:

  • 對放入主機 appBase指定目錄下的 .WAR 文件進行配置。
  • 對放入主機的膨脹 Web 應用進行配置。
  • 對于已通過 .WAR 文件配置好的應用,如果又提供了更新的 .WAR 文件,則使用新 .WAR 文件對該應用重新進行配置。在這種情況下,會先移除原有的膨脹 Web 應用,然后再次對 .WAR 文件進行擴展(膨脹)。

注意,如果在主機配置中,沒有把 unpackWARs 屬性設為 false,則 WAR 文件將不會膨脹,這時 Web 應用將部署為一個壓縮文檔。

  • 如果 /WEB-INF/web.xml 文件(或者任何其他被定義為 WatchedResource 的資源)更新,則重新加載 Web 應用。
  • 如果用來部署 Web 應用的上下文描述符更新,則重新部署該 Web 應用。
  • 如果 Web 應用所使用的全局或者每臺主機中的上下文描述符已更新,則重新部署與該應用有依賴關系的 Web 應用。
  • 如果一個上下文描述符被添加到 $CATALINA_BASE/conf/[enginename]/[hostname]/ 目錄中,并且該描述文件帶有與之前部署的 Web 應用的上下文路徑相對應的文件名,則重新部署該 Web 應用。
  • 如果某個 Web 應用的文檔庫(docBase)被刪除,則取消對該應用的部署。注意,在 Windows 系統下,要想實現這樣的行為,必須開啟防鎖死功能(參看 Context 配置文檔),否則無法刪除運行中的 Web 應用的資源文件。

注意,也可以在加載器中對 Web 應用的重新加載進行配置,在這種情況下,會跟蹤已加載的類所產生的更改。

使用 Tomcat Manager 進行部署

詳情參看 Tomcat Manager 文檔

使用客戶端部署器進行部署

最后要介紹的是利用客戶端部署器(TCD)對 Web 應用進行部署。客戶端部署器可以實施的行為包括:驗證并編譯 Web 應用,將資源文件壓縮成 .WAR 文件,并將 Web 應用部署到用于生產或開發環境的 Tomcat 服務器上。

一定要注意,該特性的實現需要使用 Tomcat Manager,而且目標 Tomcat 服務器也應處于運行狀態。

因為會用到 TCD,所以要求用戶還必須熟悉 Apache Ant。Apache Ant 是一個腳本編譯工具。TCD 每個包都會帶有一個編譯腳本。

只需大體能夠了解 Apache Ant 即可(本節前面列有其安裝細則,這里需要熟練使用操作系統命令 shell 以及配置環境變量)。

TCD 包括一些 Ant 任務,在配置前用于 JSP 編譯的 Jasper 頁面編譯器,以及驗證 Web 應用上下文描述符的任務。驗證器任務(org.apache.catalina.ant.ValidatorTask類)只允許傳入一個參數:膨脹 Web 應用的基本路徑。

TCD 使用膨脹 Web 應用作為輸入(下面列出了其所用的屬性列表)。通過部署器,以編程方式部署的 Web 應用可能會在 /META-INF/context.xml 中包含一個上下文描述符。

TCD 包含一個可即時使用的 Ant 腳本, 其中包含以下目標。

  • compile(默認):編譯并驗證 Web 應用。可以單獨使用,并不需要運行著的 Tomcat 服務器。已編譯的應用只能運行在相關的 Tomcat X.Y.Z 版本的服務器上,又因為 Jasper 生成的代碼依賴它的運行時組件,所以已編譯應用并不一定能在其他版本的 Tomcat 版本上運行。另外值得注意的是,該目標也能自動編譯位于 /WEB-INF/classes 這一應用目錄下的任何 Java 源文件。
  • deploy 在 Tomcat 服務器上部署 Web 應用(無論其是否編譯過)。
  • undeploy 取消對某個 Web 應用的部署。
  • start 開啟 Web 應用。
  • reload 重新加載 Web 應用。
  • stop 停止 Web 應用。

為了能夠配置部署,還需要在 TCD 安裝的根目錄下創建一個叫做 deployer.properties 的文件,并在該文件中的每行添加下列名值對:

除此之外,你還必須確定為 TCD 所使用的目標 Tomcat Manager 創建了一個用戶,否則 TCD 就無法驗證 Tomcat Manager,從而造成配置失敗,詳細信息參看 Tomcat Manager 文檔

  • build build 文件夾默認位置是 ${build}/webapp/${path} (其中 ${build} 的默認指向位置是 ${basedir}/build)compile 目標執行完畢后,Web 應用的 .WAR 文件將位于 ${build}/webapp/${path}.war
  • webapp 該文件夾包含后續將進行編譯與驗證的膨脹 Web 應用。默認情況下,該文件夾是 myapp
  • path Web 應用已部署的上下文路徑,默認為 /myapp
  • url 指向運行中的 Tomcat 服務器中的某個 Tomcat Manager Web 應用的絕對路徑,用于對 Web 應用的部署與取消部署。默認情況下,部署器會嘗試訪問運行在 localhost 上的 Tomcat 實例,其 url 為 http://localhost:8080/manager/text
  • username Tomcat Manager 的用戶名(用戶應具有讀寫 manager-script 的權限)。
  • password Tomcat Manager 的密碼。
全部教程
主站蜘蛛池模板: 一级免费a | 香蕉成人啪国产精品视频综合网 | 精品国产国产综合精品 | 国产精品福利久久 | 欧美日韩国产高清 | 精品国产一区二区三区久久 | 国产亚洲欧美久久久久 | 精品国产一区二区三区香蕉事 | 国产伦码精品一区二区 | 真实子伦视频不卡 | 漂亮女大学一级毛片 | 亚洲综合射 | 男女午夜激情 | 奇米影视7777久久精品 | 久草在线中文最新视频 | 成人久久网 | 久久最新精品 | 成人欧美一区二区三区在线观看 | 国产一国产一级毛片视频 | 成人午夜啪啪免费网站 | 日韩欧美亚洲 | 免费鲁丝片一级观看 | 成人毛片18岁女人毛片免费看 | 视频一区二区国产无限在线观看 | 免费一看一级毛片全播放 | 国产二区三区毛片 | 国产亚洲精品网站 | 国产亚洲精品一区二区在线观看 | 久草福利站| 亚洲国产一区二区三区精品 | 免费真实播放国产乱子伦 | 一本久草| 久草在线视频看看 | 久热中文字幕在线精品免费 | 国产日韩精品一区二区在线观看 | 国内精品久久久久久影院8f | 中文字幕亚洲一区二区三区 | 全部无卡免费的毛片在线看 | 日韩欧美在线不卡 | 久久精品片| 亚洲精品国产成人一区二区 |