1. 程式人生 > >Tomcat啟動專案的三種方式

Tomcat啟動專案的三種方式

在這裡介紹在Tomcat中部署web專案的三種方式:

1.部署解包的webapp目錄

2.打包的war檔案

3.Manager Web應用程式

一:部署解包的webapp目錄

將Web專案部署到Tomcat中的方法之一,是部署沒有封裝到WAR檔案中的Web專案。要使用這一方法部署未打包的webapp目錄,只要把我們的專案(編譯好的釋出專案,非開發專案)放到Tomcat的webapps目錄下就可以了。如下圖所示:

這時,開啟Tomcat伺服器(確保伺服器開啟),就可以在瀏覽器訪問我們的專案了,如下圖所示:

但這個時候,我們發現,在訪問我們的專案內容時,必須加上我們的專案名字"myweb",這樣很不好。如果我們想直接以不用加專案名的http://localhost:8080/index.html這種形式訪問,如下:

我們發現出現了404錯誤。如果我們想通過上述連線可以正常訪問我們的專案,我們可以編輯conf/server.xml進行配置。

開啟server.xml檔案,找到Host元素,預設配置如下:

我們需要在Host內部增加Context的內容,增加之後如下:

這個時候,就可以通過這種不用加專案名的http://localhost:8080/index.html形式訪問了。如下:

(其實這個時候還是可以通過http://localhost:8080/myweb/index.html這個地址訪問的。)

二:打包的war檔案

這種方式,只需把打包的war檔案放在webapps目錄下。如下圖所示:

當我們啟動Tomcat的時候,Tomcat要做的第一件事就是解包war檔案的內容到相同檔名的路徑中,取出.war副檔名,然後從解包的目錄中讀取專案檔案。現在,我們啟動Tomcat,如下圖所示:

可以看到,在webapps這個目錄下多了一個解包的myweb資料夾。然後在瀏覽器中就可以通過http://localhost:8080/myweb/index.html這個地址訪問了。如果我們想以http://localhost:8080/index.html這個地址訪問,同樣需要配置server.xml檔案。操作步驟與上面的方式相同,不再重複。

三:Manager Web方式

Manager Web源應用程式可以讓我們通過Web管理自己的Web專案。當然,如果任何人都能管理其他人的專案,事情就變得有點棘手了,更別提安全防護了。所以,在我們想通過Manager Web管理自己的專案時,需要進行許可權設定。

首先訪問Apache Tomcat歡迎頁。

這個時候,我們點選圖中圈中的部分,會提示我們輸入使用者名稱和密碼。所以我們需要在conf/tomcat- users.xml檔案裡新增角色。tomcat- users.xml預設沒有新增任何角色。因為我們要通過Manager Web管理我們的專案,所以我們在裡面新增manager-gui角色。如下(圈中的部分就是我們新增的角色,username隨便填,password隨便填,roles填上面的manager-gui):

配置好這個,重啟伺服器,就可以進入管理介面了。

進入Server Status頁面可以檢視伺服器的狀態,看到Tomcat的相關資訊,包括Tomcat版本,JVM版本,JVM提供商等,如下圖:

進入Manager App頁面就可以管理我們的專案了。頁面如下圖所示:

Applications下顯示了webapps目錄下的專案目錄:ROOT目錄,doc目錄,manager目錄,這些都是Tomcat自帶的。這個時候還沒有我們自己的專案。現在我們開始部署自己的專案。在Deploy下,我們看到有兩種方式:1.Deploy directory or WAR file located on server;2.WAR file to deploy。

首先演示通過WAR file to deploy的方式。

myweb.war是我們打包好的專案檔案,點選"選擇檔案"可以在我們的主機上選擇我們的專案檔案。這個檔案可以放在任何位置,如果放在webapps下,那麼啟動Tomcat的時候,Tomcat就直接解壓了。如果放在其它位置,那麼啟動Tomcat的時候,Tomcat會把myweb.war檔案複製到webapps目錄下,再進行解壓。選擇好檔案,點選Deploy釋出就行了。這個時候,就可以在瀏覽器通過http://localhost:8080/myweb/index.html訪問了。

這個時候,我們再看一下Manager App頁面的變化,如下圖中圈中的部分,多了我們剛才釋出的myweb專案。

接下來是Deploy directory or WAR file located on server的方式。把myweb.war複製到webapps目錄下,在WAR or Directory URL:後面填上 \myweb ,點選Deploy釋出就行了。