Я пишу приложение, базирующееся на веб-сокетах. Конфигурация: JS, PHP, Apache, Windows 10, Node32. При этом, происходит следующее.
Я стартую PHP-демон, опрашивающий серверный сокет и создающий клиентские соединения. Для отладки, все, прочитанное через клиентский сокет, выводится на печать.
На клиенте JS создает веб-сокет... let socket = new WebSocket(url);
При этом, демон выводит полученный пакет запроса: метод, заголовки и (пустое) тело.
Далее, должно сработать событие onopen на сокете. Но оно не срабатывает. А если я пытаюсь послать что-либо на сервер, при помощи socket.send(), я получаю сообщение о том, что связь еще не установлена. То есть, приложение не может установить связь через сокет.
Я предполагаю, что проблема в выборе и состоянии порта. Я пробовал использовать разные порты, но без результата. Что тут можно сделать? Нужно ли открыть новый порт и попробовать с ним? И, если да, то как обеспечить безопасность? Может ли помешать антивирус? Мои знания в системном администрировании весьма поверхностны, так что, рекомендация экспертов очень пригодится.
Что-то не очень понятно, где у вас там сервер, где клиент, причем тут пхп демон, и вообще..
Может у меня устаревшая инфа, но сокеты на пхп - это изврат. Используйте nodeJs и ws для серверной части.