黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

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 默認 Servlet

什么是 DefaultSevelet

DefaultSevelet 是處理靜態資源的 Sevelet。

在什么位置聲明它?

它在 $CATALINA_HOME/conf/web.xml 中被全局聲明。默認形式的聲明是這樣的: $CATALINA_HOME/conf/web.xml

<servlet>
        <servlet-name>default</servlet-name>
        <servlet-class>
          org.apache.catalina.servlets.DefaultServlet
        </servlet-class>
        <init-param>
            <param-name>debug</param-name>
            <param-value>0</param-value>
        </init-param>
        <init-param>
            <param-name>listings</param-name>
            <param-value>false</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

...

    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

因此在默認的情況下,默認 servlet 在 Web 應用啟動時被裝載,目錄列表可被使用,日志調試功能被關掉。

What can I Change?

DefaultServlet 允許設置以下初始化參數:

屬性

描述

debug

調試級別。如果不是 tomcat 開發人員,則沒有什么太大的用處。截止本文寫作時,有用的值是 0、1、11、1000。默認值為 0

listings

如果沒有歡迎文件,要不要顯示目錄列表?值可以是true 或 false。
歡迎文件是servlet api的一部分。
警告:目錄列表中含有的很多項目都是非常消耗服務性能的,如果對大型目錄列表多次進行請求,會嚴重消耗服務器資源。

gzip

如果某個文件存在gzip格式的文件(帶有gz后綴名的文件通常就在原始文件旁邊)。如果用戶代理支持 gzip 格式,并且啟用了該選項,Tomcat 就會提供該格式文件的服務。默認為 false。
如果直接請求帶有 gz 后綴名的文件,是可以訪問它們的,所以如果原始資源受安全挾制的保護,則 gzip 文件也同樣是受保護的。

readmeFile

如果提供了目錄列表,那么可能也會提供隨帶的 readme 文件。這個文件是被插入的,因此可能會包含 HTML。默認值是null。

globalXsltFile

如果你希望自定義目錄列表,你可以使用一個 XSL 轉換(transformation)。這個值是一個可用于所有目錄列表的相對路徑文件名(既相對于 CATALINA_BASE/conf/ 也相對于 $CATALINA_HOME/conf/)。》這可以每個上下文或每一目錄》可參看下面介紹的 contextXsltFile 和 localXsltFile。該 xml 文件的格式會在下文介紹。

contextXsltFile

你可以通過contextXsltFile 來自定義你的目錄列表。這必須是一個上下文相對路徑(例如:/path/to/context.xslt),相對于帶有 .xsl 或 .xslt 擴展名的文件。它將覆蓋 globalXsltFile。如果提供了該值,但相對文件卻不存在,則將使用 globalXsltFile。如果 globalXsltFile 也不存在,則顯示默認的目錄列表。

localXsltFile

你還可以在每個目錄通過配置 localXsltFile 定制你的目錄列表。它應該是在產生列表的目錄里的一個相對路徑文件名。它覆蓋 globalXsltFile 和 contextXsltFile。如果該值存在,但是文件不存在,那么就使用 contextXsltFile。如果contextXsltFile 也不存在,那么就會使用 globalXsltFile。如果 globalXsltFile 也不存在,那么默認的目錄列表就會被顯示出來。

input

在讀取用于服務的資源時的輸入緩沖大小(以字節計)。默認為 2048。

output

在修改用于服務的資源時的輸出緩沖大小(以字節計)。默認為 2048。

readonly

上下文是否為“只讀”,從而拒絕執行 PUT 或 DELETE 這樣的 HTTP 命令。默認為 true。

fileEncoding

文件編碼用于讀取靜態資源時。默認取平臺默認值。

sendfileSize

如果所用的連接器支持 sendfile,這個參數表示所用的 sendfile 最小的文件大小(以 KB 計)。使用負數往往表示可以禁止使用 sendfile。默認為 48。

useAcceptRanges

如果為 true,則將設置 Accept-Ranges 報頭,在適于響應時。

showServerInfo

當使用目錄列表,服務器信息是否應該提供給發往客戶端的響應中。默認為 true。

我該如何自定義目錄列表

你可以用自定義實現來覆蓋 DefaultServlet,并將它用在 web.xml 聲明中。如果你能明白剛才所說的是什么意思,我們就認為你能讀懂 DefaultServlet 的代碼并作出適當的調整。(如果不能明白,則說明這種方式不適合你。)

localXsltFile 或 globalXsltFile

格式如下:

<listing>
     <entries>
      <entry type='file|dir' urlPath='aPath' size='###' date='gmt date'>
        fileName1
      </entry>
      <entry type='file|dir' urlPath='aPath' size='###' date='gmt date'>
        fileName2
      </entry>
      ...
     </entries>
     <readme></readme>
    </listing>
  • 如果 type = 'dir',則 size 丟失。
  • Readme 是一個 CDATA 項。

下面是一個能夠模仿 Tomcat 默認行為的范例 xsl 文件:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  version="3.0">
  <xsl:output method="html" html-version="5.0"
    encoding="UTF-8" indent="no"
    doctype-system="about:legacy-compat"/>
  <xsl:template match="listing">
   <html>
    <head>
      <title>
        Sample Directory Listing For
        <xsl:value-of select="@directory"/>
      </title>
      <style>
        h1 {color : white;background-color : #0086b2;}
        h3 {color : white;background-color : #0086b2;}
        body {font-family : sans-serif,Arial,Tahoma;
             color : black;background-color : white;}
        b {color : white;background-color : #0086b2;}
        a {color : black;} HR{color : #0086b2;}
        table td { padding: 5px; }
      </style>
    </head>
    <body>
      <h1>Sample Directory Listing For
            <xsl:value-of select="@directory"/>
      </h1>
      <hr style="height: 1px;" />
      <table style="width: 100%;">
        <tr>
          <th style="text-align: left;">Filename</th>
          <th style="text-align: center;">Size</th>
          <th style="text-align: right;">Last Modified</th>
        </tr>
        <xsl:apply-templates select="entries"/>
        </table>
      <xsl:apply-templates select="readme"/>
      <hr style="height: 1px;" />
      <h3>Apache Tomcat/<version-major-minor/></h3>
    </body>
   </html>
  </xsl:template>

  <xsl:template match="entries">
    <xsl:apply-templates select="entry"/>
  </xsl:template>

  <xsl:template match="readme">
    <hr style="height: 1px;" />
    <pre><xsl:apply-templates/></pre>
  </xsl:template>

  <xsl:template match="entry">
    <tr>
      <td style="text-align: left;">
        <xsl:variable name="urlPath" select="@urlPath"/>
        <a href="{$urlPath}">
          <pre><xsl:apply-templates/></pre>
        </a>
      </td>
      <td style="text-align: right;">
        <pre><xsl:value-of select="@size"/></pre>
      </td>
      <td style="text-align: right;">
        <pre><xsl:value-of select="@date"/></pre>
      </td>
    </tr>
  </xsl:template>
</xsl:stylesheet>

如何保證目錄列表的安全性

在每一個單獨的 Web 應用中使用 web.xml。可查看 Servlet 規范的安全性部分的內容。

全部教程
主站蜘蛛池模板: 日本三级香港三级人妇网站 | 青青青久热国产精品视频 | 精品一区二区三区在线观看视频 | 免费久久久久 | 久久一本精品久久精品66 | 超级碰在线观看 | 插吧综合网 | 五月视频 | 最近2019中文 | 免费特黄一级欧美大片在线看 | 中文字幕亚洲一区 | 成年看片永远免费 | 精品日韩在线视频 | 国产系列欧美系列日韩系列在线 | 美女视频网站黄色 | 国产丝袜护土调教在线视频 | 色爽爽爽爽爽爽爽爽 | 精品欧美在线精品 | 91在线 在线播放 | 日韩在线视频网 | 视频在线观看你懂的 | 天天操欧美 | 亚洲欧美日韩久久一区 | a级成人毛片免费视频高清 a级片免费网站 | 亚洲 欧美 精品专区 极品 | 黑丝足| 免费一看一级欧美 | h网站免费看| 日韩永久免费进入2015 | 成人国产三级在线播放 | 伊人久久综在合线亚洲不卡 | 亚洲精品成人a | 羞羞视频在线观看视频 | 操操操干干 | 亚洲日本va中文字幕婷婷 | 成人禁在线观看 | 免费看黄色一级毛片 | 宠文肉细致高h一对一 | 日日操夜夜添 | 天天综合网天天综合色不卡 | 国产精品日本一区二区在线看 |