我需要一些方法来访问我的Web应用程序前端(默认情况下在localhost:8080
上)到本地网络用户(192.168.x.y
)。假设我的ip是192.168.1.72
,我希望我的网络中的其他客户端可以通过在地址栏中键入192.168.1.72:8080
来在浏览器中查看我的应用程序前端。有没有办法在我的本地网络而不是localhost中启动Wildfly独立实例?或者是否有另一种解决方案(也许我可以以某种方式将我在本地网络中的地址连接到localhost)?抱歉傻傻的
standalone.bat
/ standalone.sh
启动脚本接受绑定参数,因此您可以将应用程序服务器绑定到传入请求的特定IP地址。
例如,standalone.bat -b 0.0.0.0
将启动Wildfly监听所有IP地址。
可能的参数:0.0.0.0
用于所有IP地址,127.0.0.1
只能在localhost上监听,192.168.1.72
只能在你的局域网IP上监听(然后甚至从本地机器上你需要输入局域网IP)。注意:这只会更改它正在侦听的IP,端口仍为8080或您配置的任何内容。
您有正常客户端服务绑定地址的-b
参数,您还有-bmanagement
用于管理接口。这是您可以通过浏览器或远程协议连接到管理控制台的界面。
即使您提供对Web应用程序的远程访问,也可以为您保留管理界面。例如:
standalone.bat -b 0.0.0.0 -bmanagement 127.0.0.1
将允许任何人连接,但只有本地连接进行管理。
如果要“手动”执行此操作,可以通过更改standalone.xml
文件中的公共接口来设置不同的IP地址。它应该如下所示:
<interface name="public">
<inet-address value="${jboss.bind.address:192.168.1.72}"/>
</interface>
因此,服务器现在只在指定的IP地址上侦听(重启后)。如果你想允许所有可用的网络接口,你应该放置一个0.0.0.0
(小心这个)。
如果您正在使用带有WildFly的Eclipse开发Web应用程序,并且想要从其他计算机/设备访问您的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
然后取消选中“始终更新与运行时相关的参数”。您应该可以使用http://ip:port
访问您的网络应用程序。
如果要允许所有可以放在standalone.xml中的IP地址:
<interface name="public">
<any-address/>
</interface>
如果你换网络可能更好的解决方案....