Не работает сокет на сервере.

Discussion in 'PHP' started by JaxMackey, 20 Dec 2014.

  1. JaxMackey

    JaxMackey New Member

    Joined:
    10 Oct 2012
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    Здравствуйте! Написал небольшой сокет-сервер залил его на хостинг ,hostfood если это имеет значение, запускаю через браузер, вот так домен.su/sock.php
    Пробывал разные ip дать сокету, если вписываю айпи самого сервера на котором сокет пишет так:

    Warning: socket_bind() [function.socket-bind]: unable to bind address [48]: Address already in use in /../../sock.php on line 11

    Если задаю какой нибудь другой адрес то пишет так:

    Warning: socket_bind() [function.socket-bind]: unable to bind address [49]: Can't assign requested address in /../../sock.php on line 11

    Подскажите как решить эту проблему. Все ли я правильно делаю.
    Код сокета вот:
    Code:
    <?php
     
      $address = "ip";
      $port = port;
       
      $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
       
      if( !$socket ) exit( socket_strerror( socket_last_error() ) );
      else echo 'Socket_created!'."\r\n";
       
      if( !socket_bind($socket, $address, $port) ) exit( socket_strerror( socket_last_error() ) );
      else echo 'Socket_binded!'."\r\n";
       
      if( !socket_listen($socket, 10) ) exit( socket_strerror( socket_last_error() ) );
      else echo 'Socket_listen!'."\r\n";
       
      $connect = socket_accept($socket);
       
      $result = socket_read($connect,1024);
       
      echo 'Common data: '.$result."\r\n";
       
      socket_write($connect,'You sending me: '.$result."\r\n");
       
      socket_shutdown($connect);
      socket_close($socket);
       
    ?>
     
  2. JaxMackey

    JaxMackey New Member

    Joined:
    10 Oct 2012
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    Ребята помогите! Стучите сюда 614-504-229 аська! Отплачу хорошо! Не обижу!
     
  3. madhatter

    madhatter Member

    Joined:
    7 Aug 2013
    Messages:
    562
    Likes Received:
    50
    Reputations:
    54
    Отпишите в пм, тут два возможных варианта.
     
  4. JaxMackey

    JaxMackey New Member

    Joined:
    10 Oct 2012
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    Отписал! Ребята все еще нужна помощь!
     
  5. Kaimi

    Kaimi Well-Known Member

    Joined:
    23 Aug 2007
    Messages:
    1,732
    Likes Received:
    811
    Reputations:
    231
    Address already in use - занята указанная комбинация ip:port.
    Can't assign requested address - вешать сокет на произвольный адрес не выйдет.

    И в чем вопрос то? Нужна информация, хотя бы на какой порт сокет биндим
     
    _________________________
  6. JaxMackey

    JaxMackey New Member

    Joined:
    10 Oct 2012
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    А как узнать на какой порт и айпи биндить сокет? Сам сокет на хостинге сейчас лежит, я так понимаю, что надо ip хостинга вписывать в сокет, а как порт узнать какой? так вот если я ip хостинга прописываю в сокете то вылазит ошибка Address already in use. или это с портом ошибка связана...короче не пойму, объясните пожалуйста...
     
  7. Kaimi

    Kaimi Well-Known Member

    Joined:
    23 Aug 2007
    Messages:
    1,732
    Likes Received:
    811
    Reputations:
    231
    Какой порт нужен, такой и писать, я же не знаю, какое взаимодействие предполагается с этим кодом. Просто некоторые порты уже заняты, а если вписать какой-нибудь порт в диапазоне от 10000 до 65535, то скорее всего он окажется не занят.
     
    _________________________
  8. roxblnfk

    roxblnfk Elder - Старейшина

    Joined:
    6 Feb 2010
    Messages:
    189
    Likes Received:
    42
    Reputations:
    19
    Бинди на адрес 0.0.0.0 и не парься, решай проблему с портом. Еще не факт, что хостинг пропустит входящие соединения на левые порты, а не левые уже заняты, как правило :)
     
  9. altblitz

    altblitz Elder - Старейшина

    Joined:
    5 Jun 2009
    Messages:
    3,694
    Likes Received:
    3,149
    Reputations:
    236
    Ты абидел достойный php своим говно-скриптом.
    Уже заметил две ошибки