2013-07-31 3 views
-1

J'essaye de lier le socket avec le même port, je reçois une erreur.
Impossible de lier le même port dans la programmation de socket serveur PHP

socket_bind(): incapable de se lier adresse [0]: Une seule utilisation de chaque adresse de socket (protocole/adresse réseau/port) est normalement autorisée. dans C: \ xampp \ htdocs \ my \ server.php en ligne 79 n'a pas pu lier à la prise

Voici 79-ème ligne:

$result = socket_bind($socket, $host, $port) or die("Could not bind to socket\n"); 

Comment résoudre ce problème?

+0

Etes-vous sûr qu'il n'y a pas d'autre chose déjà lié à ce port – Anigel

+0

oui, j'ai été exécuté un programme avec un port, après un certain temps je arrêté ce programme. puis exécutez à nouveau le programme, cette fois iam obtenir une erreur, impossible de lier. – RJ501

+0

Apparaît que votre premier programme n'a pas quitté correctement et le port est toujours lié – Anigel

Répondre

0

Je suis en train de se lier avec prise même port

Utilisez un autre port ou tuer l'application qui est lié au port que vous essayez de lier. En règle générale, une seule application peut être liée à un port à la fois.

netstat -O est utilisé pour trouver les ports utilisés via cmd dans Windows.

+0

Oui, mon premier programme n'est pas complètement terminé. Je suis en train de lire socket dans un certain temps, si j'ai arrêté l'exécution de ce programme n'est pas complètement sorti. Comment fermer en boucle s'il n'y a pas de données entrantes du Client? – RJ501

0

Vous ne pouvez pas faire cela. Vous pouvez lier uniquement un socket à un protocole de tuple/adresse/port réseau. Par exemple, vous ne pouvez pas lier deux sockets TCP sur le port 4242.

+0

Oui, mon premier programme n'est pas complètement terminé. Je suis en train de lire socket dans un certain temps, si j'ai arrêté l'exécution de ce programme n'est pas complètement sorti. Comment fermer en boucle s'il n'y a pas de données entrantes du Client? – RJ501

Questions connexes