什么可能导致PHP套接字请求被阻止?

时间:2016-08-03 19:17:03

标签: php sockets

我正在使用this PHP库来查询Minecraft服务器并获取有关它的一些信息(玩家在线,最大玩家等)。它通过套接字连接到服务器并发送信息请求,服务器发回数据。当我在我的个人计算机上托管XAMPP上的代码时,一切都很完美。然后我有一个网络主机(Bluehost)并上传了所有代码,现在请求每次都超时。我已经使用命令提示符ping服务器地址以确保它已启动并响应,并且它是。

这是我的代码:

function pingPlayers($ip) {
    try {
        $Query = new MinecraftPing($ip);
        $response = $Query->Query();

        $players = $response['players']['online'];
        $maxPlayers = $response['players']['max'];
        $online = true;
    }
    catch(MinecraftPingException $e) {
        $players = "0";
        $maxPlayers = "0";
        $online = false;

        var_dump($e);
    } finally {
        $Query->Close();
    } 

    return array("players" => $players, "maxPlayers" => $maxPlayers, "status" => $online);
}

MinecraftPing class and all of it's functions can be found here.

我收到一个MinecraftPingException,它说“无法连接或创建套接字:110(连接超时)”。我的第一个猜测是主机阻止传出请求,但我联系了他们,他们说什么都没有被阻止。除了MinecraftPingException之外,我没有收到任何其他错误。

0 个答案:

没有答案