在回答之前,请注意我是PHP的新手。我听说它很强大。
我想要做的是在我的(Apache 2)Web服务器上有一个页面,当用户点击页面上的按钮时,服务器将检查端口是否在其上运行。拥有每个按钮的预设端口的IP,我想要多个具有相同IP但不同端口的按钮被ping。
示例:
单击按钮1(Terraria Server),服务器ping 127.0.0.1:7777并告诉用户是否收到响应。
单击按钮2(Minecraft服务器),服务器ping 127.0.0.1:25565并告诉用户等等。
我已经安装并运行了PHP,我只需要一些代码:)
答案 0 :(得分:2)
尝试端口上的连接并返回结果:
<?php
function Connect($port) {
$serverConn = @stream_socket_client("tcp://127.0.0.1:{$port}", $errno, $errstr);
if ($errstr != '') {
return false;
}
fclose($serverConn);
return true;
}
if(isset($_POST['portTest'])){
switch ($_POST['portTest']){
case 'minecraft': $port= '25565';
break;
case 'Terraria': $port= '7777';
break;
default: exit;
}
if (Connect($port)){
echo "Server is running!";
}else{
echo "Server is down";
}
}
?>
<form method="POST">
<input type="submit" name="portTest" value="minecraft">
<input type="submit" name="portTest" value="Terraria">
</form>