2017-04-10 14 views
0

私はjettyを使ってWebアプリケーションを配備しています。私はwebdefault.xmldirAllowedのパラメータをfalseに変更しましたが、引き続きJettyはIP:PORTを与えるたびにその内部のすべてのコンテキストパスをリストしています。jettyのディレクトリリストを無効にする

<init-param> 
    <param-name>dirAllowed</param-name> 
    <param-value>false</param-value> 
</init-param> 

ありがとうございます。

+0

あなたは桟橋のどのバージョンを使用していますか? webdefault.xmlの9.4.3でこれを複製することはできません。または、特定のwebappのweb.xmlに実装することで、これを再現することはできません。 – Walkerwatch

+0

@Walkerwatch私は9.4.3バージョンを使用しています。 https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-home/9.4.3.v20170317/jetty-home-9.4.3.v20170317.tar.gzからダウンロードしました。私は桟橋のドッカー画像を使用しています。 –

+0

ページには次の情報が含まれています。エラー404 - 見つかりません。 このサーバー上のコンテキストは、この要求と一致または処理されていません。 このサーバには、次のコンテキストがあります。 /UserManagement ---> oejwWebAppContext @ 887af79 {/UserManagement,file:///tmp/jetty/jetty-0.0.0.0-8080-UserManagement.war-_UserManagement-any-2467051063966033581 .dir/webapp /、AVAILABLE} {/ UserManagement.war} –

答えて

1

webdefault.xmlを直接変更しないでください。独自のコピーを用意し、コンテキストxml deployableでその場所を指定する必要があります。${jetty.base}/webapps/UserManagement.xml

例:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" 
          "http://www.eclipse.org/jetty/configure_9_3.dtd"> 

<Configure id="testWebapp" class="org.eclipse.jetty.webapp.WebAppContext"> 

    <Set name="contextPath">/UserManagement</Set> 
    <Set name="war"> 
    <Property name="jetty.webapps"/>/UserManagement.war 
    </Set> 

    <Set name="defaultsDescriptor"> 
    <Property name="jetty.base"/>/etc/mywebdefault.xml 
    </Set> 
</Configure> 

簡単な解決策は、前の回答で説明したようごUserManagement.warであなたのWEB-INF/web.xmlを変更することです...

https://stackoverflow.com/a/43328817/775715

+0

私は自分のUserManagement.xmlを更新しましたが、今はwebappsフォルダ内に存在するwarファイルをリストしていません。ありがとうございます。 –

関連する問題