Друзья неделя попыток разобраться в причине возникновения ошибки не увенчалась успехом. Пытаюсь настроить веб сокеты в стеке php+javascript с использованием фреймворка workerman.
server.php - Серверная часть выгладит так:
// Подключаем библиотеку Workerman
use Workerman\Worker;
require_once __DIR__ . '/vendor/autoload.php';
$wsWorker = new Worker("websocket://45.84.226.248:8433");
$wsWorker->count=4;
$wsWorker->onConnect = function($connection){
echo "new connection!\n";
};
$wsWorker->onMessage = function($connection, $data) use ($wsWorker){
foreach($wsWorker->connections as $clientConnection)
{
$clientConnection->send($data);
}
};
$wsWorker->onClose = function($connection){
echo "Connection closed!\n";
};
Worker::runAll();
после подключения запускаю через консоль, все удачно запускается.
client.html - Клиентская часть:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<script>
const ws = new WebSocket("wss://45.84.226.248:8433");
ws.onmessage = function(evt) {alert(evt.data);};
</script>
</head>
</html>
выводит ошибку:
WebSocket connection to '
wss://45.84.226.248:8433/' failed:
send.php - Отправка сообщения:
// соединяемся с локальным tcp-сервером
$instance = stream_socket_client("tcp://45.84.226.248:8433");
// отправляем сообщение
fwrite($instance, "test message \n");
в консоль не выводит сообщение, а только лишь
new connection
connection closed
как будто сразу рвет соединение.
Не знаю принято тут или нет, но готов заплатить даже за помощь в решении этой задачи.
Совсем завяз с этим вопросом.