Добрый вечер. Запускаю веб сокет сервер на компьютере и пытаюсь подключиться к нему через клиент. Если в клиенте прописать localhost:8082 то конектится, но как только я пытаюсь вместо локал хоста прописать глобальный ip компьютера, клиент отказывается соединятся.Работаю на open server. Вот так выглядит клиент
<script>
window.onload = function(){
var socket = new WebSocket("ws://ip:8082");
var status = document.querySelector("#status");
socket.onopen = function() {
status.innerHTML = "cоединение установлено" + "<br>";
};
socket.onclose = function(event) {
if (event.wasClean) {
status.innerHTML = 'cоединение закрыто';
} else {
status.innerHTML = 'соединения как-то закрыто';
}
status.innerHTML += '<br>код: ' + event.code + ' причина: ' + event.reason;
};
socket.onmessage = function(event) {
status.innerHTML += "пришли данные " + event.data + "<br>";
};
socket.onerror = function(event) {
status.innerHTML = "ошибка " + event.message;
};
//в рамках onload
document.forms["messages"].onsubmit = function(){
var fname = this.fname.value;
var msg = this.msg.value;
socket.send(fname + ' ' + msg);
return false;
}
}
</script>
Вот код сервера
<?php
use Ratchet\Server\IoServer;
use Ratchet\Http\HttpServer;
use Ratchet\WebSocket\WsServer;
use MyApp\Chat;
require dirname(__DIR__) . '/vendor/autoload.php';
$server = IoServer::factory(
new HttpServer(
new WsServer(
new Chat()
)
),
8082
);
$server->run();
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники