J'ai un serveur apache et d'écouter le port 8000 et 80socket Web PHP incapable de se lier socket
j'utilise ci-dessous fonction php pour créer une socket web
private function createSocket($host,$port)
{
if(($this->master=socket_create(AF_INET,SOCK_STREAM,SOL_TCP)) < 0)
{
die("socket_create() failed, reason: ".socket_strerror($this->master));
}
self::console("Socket {$this->master} created.");
socket_set_option($this->master,SOL_SOCKET,SO_REUSEADDR,1);
#socket_set_option($master,SOL_SOCKET,SO_KEEPALIVE,1);
if(($ret=socket_bind($this->master,$host,$port)) < 0)
{
die("socket_bind() failed, reason: ".socket_strerror($ret));
}
self::console("Socket bound to {$host}:{$port}.");
if(($ret=socket_listen($this->master,5)) < 0)
{
die("socket_listen() failed, reason: ".socket_strerror($ret));
}
self::console('Start listening on Socket.');
$this->allsockets[] = $this->master;
}
supposer l'hôte $ est 127,0. 0,1 et $ port est 8000
quand je vais à la console shell et démarrer le serveur socket, il dit Avertissement: socket_bind(): incapable de se lier adresse [98]: adresse déjà utilisée
lorsque je supprime le port de $, il ne montre pas d'erreur, mais le serveur de socket continue à écouter et aucune réponse
Quel est le problème?
je tente, 1234, 1235, 1236, 8000, 8002, mais même msg – user192344
Ceux-ci sont probablement utilisés, les numéros les plus bas sont généralement utilisés en premier. Essayez les ports au-dessus de 40000. – MrCode
essayez 41234, et vu au port d'écoute actuel, il n'y a pas d'état d'écoute sur 41234, mais renvoyez le même msg, même redémarrez le serveur – user192344