web及tomcat基本目錄文件架構

digest.bat啓動TOMCAT

digest.sh(linux系統使用啓動TOMCAT)

shutdown.bat關閉TOMCAT

java環境變量配置就是Tomcat配置!

 

建一個java文件夾,裝jdk、jre、tomcat。分別把jdk、jre、tomcat安裝的文件件建成各自的目錄放進去。

先裝了javajdk,安裝文件jdk-6u21-windows-i586.exe同時和jre一個大目錄,設好環境變量,運行後jre隨後裝好。
裝tomcat是在javajre裏,有個項目部署目錄改爲d盤。


java正常裝,so,安裝文件移到javajdk下。

tomcat是裝jre裏,部署目錄新建,安裝文件在Tomcat。
安裝tomcat後拒接訪問,右鍵屬性兼容模式運行。

 

一、TOMCAT的目錄結構
/bin:存放windowsLinux平臺上啓動和關閉Tomcat的腳本文件

/conf:存放Tomcat服務器的各種全局配置文件,其中最重要的是server.xmlweb.xml

/doc:存放Tomcat文檔

/server:包含三個子目錄:classeslibwebapps

/server/lib:存放Tomcat服務器所需的各種JAR文件

/server/webapps:存放Tomcat自帶的兩個WEB應用admin應用和 manager應用

/common/lib:存放Tomcat服務器以及所有web應用都可以訪問的jar文件

/shared/lib:存放所有web應用都可以訪問的jar文件(但是不能被Tomcat服務器訪問)

/logs:存放Tomcat執行時的日誌文件

/src:存放Tomcat的源代碼

/webappsTomcat的主要Web發佈目錄,默認情況下把Web應用文件放於此目錄

/work:存放JSP編譯後產生的class文件

二、WEB應用的目錄結構:假設在$CATALINA_HOME/webapps下有helloappweb應用
/helloappWeb應用的根目錄,所有的jsp文件和html文件都在此目錄下

/helloapp/WEB_INF:存放該web應用發佈時的描述文件web.xml

/helloapp/WEB_INF/class:存放各種class文件,Servlet文件也存放於此目錄下

/helloapp/WEB_INF/lib:存放各鍾Web應用所需要的jar文件。比如可以存放JDBC驅動程序的JAR文件

三、Tomcat加載類和資源的順序爲(以helloapp應用爲例):
1helloapp /webapps/helloapp/Web-INF/下的classeslib子目錄中*.calss*.jar,僅helloapp可以加載)

2Bootstrap $JAVA_HOME/jre/lib/ext/*.jar

3System $CLASSPATH/*.classCLASSPATH中指定的jar

4Common $CATALINA_HOME/common/下的classeslibendores子目錄中*.class*.jar

5Catalina $CATALINA_HOME/server/下的classeslib子目錄中*.calss*.jar,僅Tomcat可以加載)

6Shared $CATALINA_HOME/shared/下的classeslib子目錄中*.calss*.jar,僅所有Web應用可以加載)

四、$CATALINA_HOME/conf/server.xml配置簡介
1、元素屬性

port:指定一個端口,這個端口負責監聽關閉tomcat的請求

shutdown:指定向端口發送的命令字符串,通常是“SHUTDOWN”

2、元素屬性

name:指定service的名字,通常是”Catalina”

3、元素屬性(表示客戶端和service之間的連接):

port:指定服務器端要創建的端口號,並使用這個斷口監聽來自客戶端的請求

minProcessors(考察是否有此屬性):服務器端啓動時創建的處理請求的線程數

maxProcessors(考察是否有此屬性):最大可以創建的處理請求的線程數

maxThreads:服務器創建的最大線程數

minSpareThreads:最小剩餘線程數

maxSpareThreads:最大剩餘線程數

enableLookups:如果爲true,則可以通過調用request.getRemoteHost()進行DNS查詢來得到遠程客戶端的實際主機名,若爲false則不進行DNS查詢,而是返回其IP地址

redirectPort:指定當服務器正在處理HTTP請求時收到了一個SSL傳輸請求後重定向的端口號

acceptCount:指定當所有可以使用的處理請求的線程數都被使用時,可以放到處理隊列中的請求數,超過的請求將不予處理

connectionTimeout:指定超時的時間數(以毫秒爲單位)

disableUploadTimeout:不明

debug:不明

protocol:不明

4、元素屬性(指定service中的請求處理主機,接收和處理來自Connector的請求)

name:指定Engine的名字,通常是”Catalina”

defaultHost:指定默認的處理請求的主機名,至少與某個host元素的name屬性值是相同的

5、元素屬性(表示一個web應用程序)

docBase:指定此Web應用的絕對或相對路徑,也可以爲WAR文件的路徑

path:表示此Web應用程序的url的入口,如爲“/hello“,則請求的URLhttp://localhost:8080/hello/

reloadable:如果爲true,則Tomcat在運行時會自動監視Web應用的/WEB-INF/lib/WEB-INF/classes下文件的改動,自動裝載新應用,使我們可以在不重啓Tomcat的情況下更新Web應用

6、元素屬性(表示一個虛擬主機)

name:指定虛擬主機名字

debug:指定日誌級別

appBase:存放Web應用程序的基本目錄,可以是絕對路徑或相對於$CATALINA_HOME的目錄,默認是$CATALINA_HOME/webapps

unpackWARs:如果爲true,則tomcat會自動將WAR文件解壓後運行,否則不解壓而直接從WAR文件中運行應用程序

autoDeploy:如果爲true,表示Tomcat啓動時會自動發佈appBase目錄下所有的Web應用(包括新加入的Web應用)

deployOnStarup:如果此項爲true,表示Tomcat服務器啓動時會自動發佈appBase目錄下所有Web應用。如果Web應用在 server.xml中沒有相應的元素,則將採用默認的Context配置。deployOnStarup的默認設置是 true

alias:指定虛擬主機的別名,可以指定多個別名

xmlValidation:不明

xmlNamespaceAware:不明

7、元素屬性(表示日誌,調試和錯誤信息)

className:指定logger使用的類名,此類必須實現org.apache.catalina.Logger 接口

prefix:指定log文件名的前綴(文件名)

suffix:指定log文件名的後綴(擴展名)

timestamp:如果爲true,則log文件名中會加入日期時間,如下例:localhost_log.2006-10-04.txt

directory:指定log文件存放的目錄

8、元素屬性(表示存放用戶名,密碼及role的數據庫)

className:指定Realm使用的類名,此類必須實現org.apache.catalina.Realm接口

resourceName:不明

9、元素屬性(功能與Logger相似,其prefixsuffix屬性解釋和Logger 中的一樣)

className:指定Valve使用的類名,如用org.apache.catalina.valves.AccessLogValve類可以記錄應用程序的訪問信息

directory:指定log文件存放的位置

pattern:有兩個值,common方式記錄遠程主機名或ip地址、用戶名、日期、第一行請求的字符串、HTTP響應代碼、發送的字節數。combined方式比common方式記錄的值還多。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章