Tomcat的安裝目錄下的conf目錄下的web.xml文件有許多配置,例如:
<init-param> <param-name>debug</param-name> <param-value>0</param-value> </init-param>
debug是設定debug level, 0表示提供最少的信息,9表示提供最多的信息.
下面這個參數重要:
<init-param> <param-name>listings</param-name> <param-value>false</param-value> </init-param>
在 web 開發階段,通常希望列出 web 路徑下的所有頁面,這樣能方便選擇需要調試的 jsp 頁面,listings設置為true時表示列出頁面,為false則表示不支持目錄結構的顯示
<load-on-startup>1</load-on-startup>
1)load-on-startup元素標記容器是否在啟動的時候就加載這個servlet(實例化並調 用其init()方法)。
2)它的值必須是一個整數,表示servlet應該被載入的順序
2)當值為0或者大於0時,表示容器在應用啟動時就加載並初始化這個servlet;
3)當值小於0或者沒有指定時,則表示容器在該servlet被選擇時才會去加載。
4)正數的值越小,該servlet的優先級越高,應用啟動時就越先加載。
5)當值相同時,容器就會自己選擇順序來加載。
<servlet> <servlet-name>jsp</servlet-name> <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class> <init-param> <param-name>fork</param-name> <param-value>false</param-value> </init-param> <init-param> <param-name>xpoweredBy</param-name> <param-value>false</param-value> </init-param> <load-on-startup>3</load-on-startup> </servlet>
參數 |
描述 |
development |
默認值為true,說明jsp文件還處於開發階段,因此Jasper應該按modificationTestInterval參數對jsp文件進行檢查,當jsp發生更改時,則對其進行重編譯 |
fork |
默認值為true。指示使用不同的JVM編譯JSP,這樣可以消除資源競爭和在開發階段的類加載器沖突 |
checkInterval |
單位為秒,規定Jasper按這個時間間隔檢查jsp是否需要重編譯,默認為0,指示使用后台程序處理 |
modificationTestInterval |
主要在development為true時發揮作用,默認值為4。Jasper將按這個頻率檢查jsp文件是否可以驗證是否修改過。 |
compiler |
讀取資源時使用的緩存大小,默認為2KB |
classdebuginfo |
寫資源時使用的緩存大小,默認為2KB |
keepgenerated |
默認值為true。指示Jasper在兩次調用servlet之間在工作目錄中保留那個servlet,這樣可以大大提高tomcat的效率 |
mappedfilegenStrAsCharArray |
這些是jsp開發者使用的優化和調試選項。 |
scratchDir |
Jasper在編譯jsp時使用的臨時文件夾,默認為$CATALINA_HOME/work下的一個臨時文件夾 |
xpoweredBy |
默認為false。功能為生成X-Power-By頭(header) |
compilerTargetVM |
編譯生成的servlet的目標VM |
compilerSourceVM |
生成servlet的源VM |
<mime-mapping> <extension>zip</extension> <mime-type>application/zip</mime-type> </mime-mapping>
mime-mapping是web.xml中的一個節點,用來指定對應的格式的瀏覽器處理方式,另外也可以用來配置靜態頁面的打開編碼:
<mime-mapping> <extension>htm</extension> <mime-type>text/html;charset=gb2312</mime-type> </mime-mapping> <mime-mapping> <extension>html</extension> <mime-type>text/html;charset=gb2312</mime-type> </mime-mapping>
如果Web應用程序包含一些不常用的文件,則需要確保分配某些MIME類型,mime-mapping元素正是為此而設計的。添加rar,iso等的mime-type映射,避免在瀏覽器里直接打開
<mime-mapping> <extension>rar</extension> <mime-type>application/octet-stream</mime-type> </mime-mapping> <mime-mapping> <extension>iso</extension> <mime-type>application/octet-stream</mime-type> </mime-mapping>
常見的MIME類型:
超文本標記語言文本 .htm,.html text/html
普通文本 .txt text/plain
RTF文本 .rtf application/rtf
GIF圖形 .gif image/gif
JPEG圖形 .ipeg,.jpg image/jpeg
au聲音文件 .au audio/basic
MIDI音樂文件 mid,.midi audio/midi,audio/x-midi
RealAudio音樂文件 .ra, .ram audio/x-pn-realaudio
MPEG文件 .mpg,.mpeg video/mpeg
AVI文件 .avi video/x-msvideo
GZIP文件 .gz application/x-gzip
TAR文件 .tar application/x-tar
關於tomcat的server.xml配置參考: https://www.cnblogs.com/qlqwjy/p/8722529.html