我安装了JBoss 5.0.1 并运行它,但当我从localhost上的同一台计算机上调用它时:8080它可以工作 但是当我从其他计算机上调用它时它根本不能使用计算机IP ...当我有tomcat时,它曾经在两者上工作。所以有人知道这个问题吗?
答案 0 :(得分:17)
如果您希望JBoss在计算机上的所有IP地址上进行通信,则可以使用-b选项启动它,并将0.0.0.0作为IP地址传递,例如
-b 0.0.0.0
可能更好的是绑定到您想要的特定IP地址。您可以使用-b选项再次执行此操作,但是传递要绑定的IP地址或要绑定的DNS名称,例如
-b 192.168.0.1
或 -b jbosshostname
您可以将-b选项放在run.bat文件中,以便在将JBoss作为服务运行时自动使用它 - 假设是Windows。如果您不使用Windows,则可以将此选项放在run.sh文件中。
如果您不希望将-b选项放在run.sh/bat文件中,可以在命令行输入:
run.bat -b 192.168.0.1
答案 1 :(得分:8)
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>
答案 2 :(得分:1)
使用-b
选项运行JBoss:
$ ./run.sh -b 0.0.0.0
(在Windows上):
> run.bat -b 0.0.0.0
答案 3 :(得分:1)
您必须相应地编辑run.bat或run.sh,包括绑定-b 0.0.0.0。
或者您可以通过命令行运行jboss。
运行-b 0.0.0.0