我需要一些方法来授予本地网络用户(localhost:8080
)访问我的Web应用程序前端(默认情况下为192.168.x.y
)。假设我的IP是192.168.1.72
,我希望网络中的其他客户端可以通过在地址栏中输入192.168.1.72:8080
来在浏览器中查看我的应用程序前端。有没有办法在我的本地网络而不是localhost中启动Wildfly独立实例?或者是否有另一种解决方案(也许我可以以某种方式将我在本地网络中的地址连接到localhost)?抱歉愚蠢的静止
答案 0 :(得分:25)
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
只能在您的LAN IP上侦听(甚至可以从您需要输入的本地计算机)局域网IP)。注意:这只会更改它正在侦听的IP,端口保持为8080或者您配置的任何内容。
正常客户端服务绑定地址有-b
参数,管理接口也有-bmanagement
。这是您可以通过浏览器或远程协议连接到管理控制台的界面。
即使您可以远程访问其中的Web应用程序,也可以为您保留管理界面。 例如:
standalone.bat -b 0.0.0.0 -bmanagement 127.0.0.1
将允许任何人连接,但只能连接本地连接以进行管理。
答案 1 :(得分:9)
如果要“手动”执行此操作,可以通过更改standalone.xml
文件中的公共接口来设置不同的IP地址。它应该是这样的:
<interface name="public">
<inet-address value="${jboss.bind.address:192.168.1.72}"/>
</interface>
因此,服务器现在只在指定的IP地址上侦听(重启后)。如果要允许所有可用的网络接口,则应放置0.0.0.0
(请注意这一点)。
答案 2 :(得分:1)
如果您正在使用Eclipse和WildFly开发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
访问您的Web应用。
答案 3 :(得分:0)
如果要允许所有IP地址,可以将其放在standelone.xml中:
if(isset($_GET['status'])){
$id = $_GET['status'];
$query="SELECT * FROM problems WHERE ID =$id";
$result=mysqli_query($con,$query);
$prob_list = array();
while($row = mysqli_fetch_assoc($result)){
$prob_list [$row['ID']]= array(
'ID' => $row['ID'],
'name' => $row['name'],
'extno'=> $row['extno'],
'department'=> $row['department'],
'problem'=> $row['problem'],
'program' => $row['program'],
'another' => $row['another']
);
}
}
如果您更改网络,可能是更好的解决方案。...