Wildfly 独立于本地网络

Wildfly standalone in local network

我需要一些方法来允许本地网络用户 (192.168.x.y) 访问我的 Web 应用程序前端(默认情况下在 localhost:8080 上)。假设我的 ip 是 192.168.1.72,我希望我网络中的其他客户端可以通过在地址栏中键入 192.168.1.72:8080 在他的浏览器中查看我的应用程序前端。有什么方法可以在我的本地网络而不是本地主机中启动 Wildfly 独立实例?还是有另一种解决方案(也许我可以以某种方式将本地网络中的地址连接到本地主机)?抱歉愚蠢的问题

standalone.bat/standalone.sh 启动脚本接受绑定参数,因此您可以将应用程序服务器绑定到传入请求的特定 IP 地址。

例如 standalone.bat -b 0.0.0.0 将启动 Wildfly 侦听您的所有 IP 地址。

可能的参数:0.0.0.0 用于所有 IP 地址,127.0.0.1 仅在本地主机上侦听,192.168.1.72 仅在您的 LAN IP 上侦听(然后即使是从您的本地计算机也需要输入局域网IP)。注意:这只会更改它正在侦听的 IP,端口仍然是 8080 或您配置的任何端口。

您有 -b 普通客户端服务绑定地址参数,您还有 -bmanagement 管理界面参数。这是您可以通过浏览器或远程协议连接到管理控制台的界面。

即使您授予对内部 Web 应用程序的远程访问权限,也最好为您保留管理界面。 例如:

standalone.bat -b 0.0.0.0 -bmanagement 127.0.0.1 将使任何人都可以连接,但只能用于管理的本地连接。

如果您想这样做 "manually",您可以通过更改 standalone.xml 文件中的 public 接口来设置不同的 IP 地址。它应该是这样的:

<interface name="public">
    <inet-address value="${jboss.bind.address:192.168.1.72}"/>
</interface>

所以,服务器现在只监听指定的 IP 地址(重启后)。如果你想允许所有可用的网络接口,你应该放置一个 0.0.0.0 代替(小心这个)。

如果您正在使用 Eclipse 和 WildFly 开发 Web 应用程序,并且您希望从另一个 machine/device 访问您的 Web 应用程序(例如测试其响应式设计),请编辑您的启动配置属性。将 localhost 更改为 0.0.0.0.

发件人:

-mp "C:\wildfly-14.0.1.Final\modules" org.jboss.as.standalone -b localhost --server-config=standalone.xml -Djboss.server.base.dir=C:\wildfly-14.0.1.Final\standalone

收件人:

-mp "C:\wildfly-14.0.1.Final\modules" org.jboss.as.standalone -b 0.0.0.0 --server-config=standalone.xml -Djboss.server.base.dir=C:\wildfly-14.0.1.Final\standalone

然后取消选中 "Always update arguments related to the runtime"。您应该能够使用 http://ip:port.

访问您的网络应用程序

如果您想允许所有 IP 地址,您可以将其输入 standelone.xml:

<interface name="public">
        <any-address/>
</interface>

如果您更改网络,也许是更好的解决方案....