1

私は自分が間違っていることを一生理解することができません。$sock = fsockopen("irc.esper.net", 6667)サーバーへの接続を試みるために使用しています。また、ポート5555を使用し、サーバー名aperture.esper.netを使用してみました。これらはすべて、タイムアウトまたはネットワーク到達不能エラー(ログを確認)のいずれかで失敗します。コード全体はここにあります:

<?php

set_time_limit(0);

$sock = fsockopen("irc.ipv6.esper.net", 6667);

echo("Joined");

if (!$sock) {
    exit(1);
}

fputs($sock, "USER kodas2_ :kodas2_");
fputs($sock, "NICK h1a2r\r\n");
fputs($sock, "JOIN #minecraft\r\n");

while (true) {

}
?>

返信ありがとうございます。

4

2 に答える 2

3
$sock =@ fsockopen("irc.esper.net", 6667, $errno, $errstr, 30);
if ($sock) {
    printf("No error, go on.");
}

言う:No error, go on.

$sock =@ fsockopen("irc.ipv6.esper.net", 6667, $errno, $errstr, 30);
if (!$sock) {
    printf("errno: %s, errstr: %s", $errno, $errstr);
}

言う:errno: 0, errstr: php_network_getaddresses: getaddrinfo failed: No such host is known.

したがって、最初にホストが有効かどうかを確認してください。

于 2013-02-19T14:52:44.580 に答える
0

私が期待する6667ポートを許可するようにファイアウォールを設定する必要がありました。

于 2014-07-03T02:56:41.407 に答える