web-dev-qa-db-ja.com

Jbossはlocalhost:8080でのみ機能しますが、IPによって呼び出されても応答しません

JBoss 5.0.1をインストールして実行しましたが、localhost:8080の同じコンピューターから呼び出すと機能しますが、他のコンピューターから呼び出すと、コンピューターのIPを使用してまったく機能しません... Tomcatを使用した場合両方で作業していたので、誰かが問題を知っていますか?

17
Farajnew

マシン上にあるすべてのIPアドレスでJBossが通信するようにしたい場合は、IPアドレスとして0.0.0.0を渡す-bオプションを使用してJBossを開始できます。

-b 0.0.0.0

おそらく、必要な特定のIPアドレスにバインドする方がよいでしょう。 -bオプションを使用してこれを再度行うことができますが、バインドするIPアドレスまたはバインドするDNS名を渡します。

-b 192.168.0.1

または-b jbosshostname

Run.batファイルに-bオプションを指定すると、JBossをサービスとして実行している場合に自動的に使用されます(Windowsを想定)。 Windowsを使用していない場合は、このオプションをrun.shファイルに配置できます。

Run.sh/batファイルに-bオプションを入れたくない場合は、コマンドラインで入力できます。

run.bat -b 192.168.0.1
18
Dave

Jboss 7のソリューションは同じですが、管理インターフェースに-bmanagementが追加されています

-b 0.0.0.0 -bmanagement 127.0.0.1

設定ファイルでこれを永続的に設定したい場合は、ファイルstandalone/configuration/standalone.xmlを次の場所から編集できます。

<interfaces>
    <interface name="management">
        <inet-address value="${jboss.bind.address.management:127.0.0.1}"/>
    </interface>
    <interface name="public">
        <inet-address value="${jboss.bind.address:127.0.0.1}"/>
    </interface>
    <interface name="unsecure">
        <inet-address value="${jboss.bind.address.unsecure:127.0.0.1}"/>
    </interface>
</interfaces>

に:

<interfaces>
    <interface name="management">
        <inet-address value="${jboss.bind.address.management:127.0.0.1}"/>
    </interface>
    <interface name="public">
        <inet-address value="${jboss.bind.address:0.0.0.0}"/>
    </interface>
    <interface name="unsecure">
        <inet-address value="${jboss.bind.address.unsecure:127.0.0.1}"/>
    </interface>
</interfaces>
8

それに応じて、バインディング-b0.0.0.0を含めてrun.batまたはrun.shを編集する必要があります。

または、次のコマンドを使用してコマンドラインでjbossを実行できます。

-b0.0.0.0を実行します

1

-bオプションを指定してJBossを実行します。

$ ./run.sh -b 0.0.0.0

(Windowsの場合):

> run.bat -b 0.0.0.0
1