下圖是啓動Tomcat後(假設%Tomcat_Home%\conf\server.xml中的默認服務端口仍是8080),在瀏覽器中鍵入http://localhost:8080 後出現的Tomcat啓動成功畫面的部分截圖:(筆者此處使用的是Tomcat 6.0.18)
在上圖的左上角Adminstration欄中,顯示有兩個控制檯,分別是Status和Manager控制檯。
其中Status控制檯是用於監控Web應用的狀態。
而Manager控制檯可以部署、監控Web應用,故通常使用Manager控制檯。點擊上圖中的Tomcat Manager鏈接,準備進入Manager控制檯,然而出現如下登陸對話框:
這個控制檯必須輸入用戶名和密碼才能夠登陸,控制檯的用戶名和密碼是通過Tomcat的JAAS(Java驗證和授權API)控制的。在Tomcat的文件結構中webapps是web應用的存放位置,所以Manager控制檯所對應的web應用也是放置在這個文件夾下。然後進入以下路徑webapps\manager\WEB-INF\,找到web.xml文件並打開。在該文件的最後部分可以看到如下配置:
<!-- Define the Login Configuration for this Application -->
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>Tomcat Manager Application</realm-name>
</login-config>
<!-- Security roles referenced by this web application -->
<security-role>
<description>
The role that is required to log in to the Manager Application
</description>
<role-name>manager</role-name>
</security-role>
<auth-method>屬性表示使用的是彈出式窗口登陸,<role-name>屬性表示只有manager角色才能夠登陸該應用。
爲了可以登陸Manager控制檯,就必須增加屬於manager角色的用戶。Tomcat默認採用文件安全域,即文件存放用戶名和密碼,而這個文件就是%Tomcat_Home%\conf下的tomcat-users.xml來控制。打開該文件,其有以下內容:
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
</tomcat-users>
以上的配置文件中顯示Tomcat默認沒有配置任何用戶,所以說無論我們在以上的登陸對話框中輸入何種內容,系統都不會讓我們登陸。爲了能夠正常登陸,則必須修改這個tomcat-users.xml文件來增加用戶,並讓該用戶屬於manager角色。方法爲在<tomcat-users>元素中增加<user>元素來增加用戶,修改後內容如下:
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="manager"/>
<user username="tomcat" password="tomcat" roles="manager"/>
</tomcat-users>
以上的代碼增加了一個用戶,用戶名爲tomcat,密碼爲tomcat,角色爲manager與web.xml中定義的一致。
這樣我們就可以通過以上手段成功登陸manager控制檯。登陸後的畫面截圖如下:
控制檯下方的Deploy可以部署Web應用。其提供兩種方式,一種是整個應用部署成爲web應用,另一種是將WAR文件部署成web應用。如下圖: