PHP套接字无法在Windows 2012上运行

时间:2017-06-20 11:30:36

标签: php sockets windows-server-2012 windows-server-2012-r2 php-socket

我在一台服务器上运行PHP套接字服务器。我已复制代码并将其放在另一台服务器上(Windows server 2012 r2)。我改变了一些事情,例如localhost ip和端口。当我通过cmd运行文件时它没有做任何事情。

这是代码。

$address=gethostbyname('localhost');
$port = 99999;
echo $address;
echo 'Hello';
if (($sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) === false) {
    echo "socket_create() failed: reason: " . socket_strerror(socket_last_error()) . "\n";
}
echo 'Hello2';
if (socket_bind($sock, $address, $port) === false) {
    echo "socket_bind() failed: reason: " . socket_strerror(socket_last_error($sock)) . "\n";
}
echo 'Hello3';
if (socket_listen($sock, 5) === false) {
    echo "socket_listen() failed: reason: " . socket_strerror(socket_last_error($sock)) . "\n";
}

这是我得到的输出。我还没有禁用任何错误报告。

enter image description here

正如你可以看到它只是'回声'第一个问候,然后只显示新的一行。

所以任何想法为什么这样做?

P.S。 php_sockets.dll已启用。我已经尝试将ip更改为ipv6和其他一些端口但运气不错。

非常感谢你的推荐。

0 个答案:

没有答案