Открываю на сервере сокет.
Подключаюсь к нему через PUTTY
Всё что делает скрипт на сервере логирую в файл.
Ожидаю получить чат: на сервер приходит то, что я набрал в PUTTY; в PUTTY выводится то, что отправил сервер.На самом деле вижу:
1) При подключении сокет на сервере принимает строку «SSH-2.0-PuTTY_Release_0.76», т.е. подключение к сокету, в принципе, происходит.
2) Пытаюсь что-то набирать в окне PUTTY, жать ENTER, больше ни чего не передаётся.
3) Скрипт выполняет socket_write(), но в PYTTY ни чего не появляется.
4) Скрипт блокируется на socket_read()
5) Скрипт разблокируется и socket_read() возвращает пустую строку после закрытия окна PUTTYКто может, объясните, что я не понимаю ?
Заранее спасибо !PHP:
/////////записываем в файл ошибки///// function err_handler($errno, $errmsg, $filename, $linenum) { $err = «$errmsg = $filename = $linenum«; } /////////записываем в файл результаты выполнения///// function log_to_file($text){ } // Позволяет скрипту ожидать соединения бесконечно. ///// $address = ‘185.26.121.226’; //le-control.ru $port = 8443; ///////создаём сокет } else{ } } else{ } } else{ } //////////////////////////////////////////////// ////ждём подключение в бесконечном цикле do { log_to_file(«ПЕРЕД ВЫЗОВОМ socket_accept»); if ($msgsock=== false) { break; } else { log_to_file( «////////////////////////////////////////////////»); } //устанавливаем не блокирующий режим //устанавливаем таймаут чтения 10000uS ////читаем и пишем в бесконечном цикле do { log_to_file( «ПЕРЕД ВЫЗОВОМ socket_read()» ); if (false === $buf) { break; } else { } log_to_file( «ПЕРЕД ВЫЗОВОМ socket_write()» ); $msg = «SUCCESS!!!\r\n\r\n«; if($result===false){ break; } else{ log_to_file( «socket_write() УСПЕХ: «. $result ); } } while (true); log_to_file( «ВЫШЛИ ИЗ ЦИКЛА ЧТЕНИЯ-ЗАПИСИ. ВЫПОЛНИЛИ socket_close(msgsock)» ); } while (true);