1

現在、WAR 内の web.xml でこの設定を使用して、コンテナーが適切に構成されているかどうかに関係なく、アプリケーション自体が Web を介して直接ファイル/フォルダーを一覧表示しないようにします。

    <servlet>
        <servlet-name>DefaultNoListing</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>DefaultNoListing</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

質問: Wildfly/Undertow にデプロイするときに、サーバーがどのように構成されているかに関係なく、各アプリケーションがフォルダー/ファイルの一覧を表示しないようにするには、どうすれば同様のことを行うことができますか?

-D

4

2 に答える 2

4

更新として、この機能が実装され、WildFly 8.0.1 の一部になります。

次のような構成で、デフォルトのサーブレットの動作を変更できます。

 <servlet>
      <servlet-name>default</servlet-name>
      <servlet-class>io.undertow.servlet.handlers.DefaultServlet</servlet-class>
      <init-param>
          <param-name>directory-listing</param-name>
          <param-value>true</param-value>
      </init-param>
 </servlet>

これにより、デフォルトのサーブレットの構成が上書きされ、ディレクトリ リストが有効になります。デフォルトでは、リストは無効になっています。

于 2014-03-04T10:42:51.967 に答える
1

現在、デフォルトのサーブレットは、Undertow/WildFly でフォルダーの一覧表示をまったくサポートしていません。

これは、実装時に見逃していたものです。

これを実装するためにhttps://issues.jboss.org/browse/UNDERTOW-195を作成しました。

実装したら、クラス名だけが今と同じように構成できるようになります

io.undertow.servlet.handlers.DefaultServlet
于 2014-02-25T16:35:12.417 に答える