4

次のディレクトリ構造を JBoss AS 7.1.1.Final にデプロイしました (下standalone/deployments):

doc.war
    -> module1
        -> index.html
    -> module2
        -> index.html

ご覧のとおり、doc.war の下に index.html はありません。localhost:8080/doc/module1/を参照すると、正しい index.html が表示されますが、localhost:8080/doc/を参照すると、JBoss にエラー メッセージ ( 404 - The requested resource is not available ) が表示されます。

これは、JBoss AS 7 でディレクトリ一覧がデフォルトでオフになっていることに関連していると思います。グローバルに、またはこの 1 つのアプリケーションに対してより具体的に、ディレクトリ一覧を有効にするにはどうすればよいですか?

編集

Mukul Goel の回答に基づいて、CLI コマンドを実行してstatic-resources機能を追加し、サーバーを再起動してリクエストを再試行しましたが、うまくいきませんでした。

ファイルからの関連するスニペットを次に示しstandalone.xmlます。ネイティブコネクタが有効になっていることに注意してください。

<subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host" native="true">
    <configuration>
        <static-resources listings="true"/>
    </configuration>
    <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/>
    <connector name="https" protocol="HTTP/1.1" scheme="https" socket-binding="https"/>
    <virtual-server name="default-host" enable-welcome-root="true">
        <alias name="localhost"/>
        <alias name="example.com"/>
    </virtual-server>
</subsystem>

JBoss が表示しているエラー メッセージは次のとおりです。

JBoss エラー メッセージ

アップデート

したがって、これに対する結論は、公式の JBoss 7.1.1.Final ( http://www.jboss.org/jbossas/downloads ) のダウンロードに問題があるということのようです。このバージョンでディレクトリ リストを動作させることができませんでした。( https://ci.jboss.org/jenkins/job/JBoss-AS-7.x-latest/の JBoss CI サーバーから) 新しいバージョンを試してみると、構成の変更を適用した後にディレクトリのリストを確認できました。 Mukul Goel が以下で提案したこと。

この問題の潜在的な原因は、JBoss で使用されている JBossWeb のバージョンである可能性があります。公式の 7.1.1.Final には JBossWeb 7.0.13 がバンドルされています。Mukul (以下を参照) は、JBossWeb 7.0.16 をバンドルする JBoss のバージョンを実行して動作させることができました。

この問題を解決するものとして Mukul Goel の回答を受け入れますが、公式の 7.1.1.Final ダウンロードではおそらく機能しないことに注意してください。

4

1 に答える 1

8

はい、その通りです。ディレクトリ リストはデフォルトで無効になっています (セキュリティ対策)。

JBOSS でディレクトリ リストを有効にするには

次の CLI コマンドを実行して、ディレクトリのリストを有効にしてみてください。

ドメインモードで

/profile=full/subsystem=web/configuration=static-resources/:write-attribute(name=listings,value=true)

.

スタンドアロン モードの場合

/subsystem=web/configuration=static-resources/:write-attribute(name=listings,value=true)

次の種類の構成が生成されます。

        <subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host" native="false">

            <configuration>
                <static-resources listings="true"/>
            </configuration>


            <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/>
            <virtual-server name="default-host" enable-welcome-root="true">
                <alias name="localhost"/>
                <alias name="example.com"/>
            </virtual-server>
        </subsystem>

更新: ユーザーが問題に直面しているため、自分で試してみました

standaloneMode の RAN CLI コマンド

これは生成されました。ネイティブが無効になっていることに注意してください。また、HTTPS コネクタも生成されていません (なぜ有効と表示されているのかわかりませんか? どこかで openSSL を使用していますか?)

standalonex.ml からの関連コード

サンプルの webprojet (クライアント側プロジェクト) を 2 つの html で作成し、jboss に公開して URL をヒットしました。

http://localhost:8080/sample/

これはディレクトリリストのスクリーンショットです

ディレクトリ一覧のスクリーンショット

コマンドは私のために働いたので、JBOSS AS7.1.1 Finalのディレクトリリストをオンにします(私も同じバージョンを使用しています)。質問は、残りのサーバー構成、アプリケーション構造、使用しているテクノロジーに帰着します。スプリングなど、またいくつかのsslライブラリを使用している場合.

更新 2 新しいダウンロードと環境の再構成を提案し、新しいディストリビューション (JbossWeb 7.0.13) でも nwinkler がまだ問題に直面していることを確認しました。

ci.jboss.org/jenkins/job/JBoss-AS-7.x-latest

リンクに移動して、最後に成功したアーティファクトの下にあるものをダウンロードするだけです

そして、問題は解決しました。jbossWeb 7.0.13 のバグのようです

コメントを確認してください。ディスカッションが役立つ場合があります

于 2012-10-10T06:46:05.577 に答える