PHP Websocket на веб-сервере

Несколько дней назад я установил этот сервер WebSocket с http://code.google.com/p/phpwebsocket/

Он отлично работает на моем локальном хосте с помощью Xampp. Затем я загрузил его в свое веб-пространство в Strato, но теперь не могу подключиться к серверу.

Я изменил соединение сокетов с моим доменом, но оно не работает

Client.html:

var host = "ws://xxxxxxxx.com:12345/Websocket/server.php";

Server.php:

$master  = WebSocket("xxxxxx",12345);

Я уже пробовал это с другим портом (80,443,12345,8080,8000....), используя IP-адрес в server.php вместо домена.

Я также использовал абсолютные и относительные пути в client.html.

На странице проектов http://code.google.com/p/phpwebsocket/ кто-то предложил использовать 0 или 0.0.0.0 в server.php, но это тоже не сработало.

В client.html он просто показывает:

WebSocket - статус 0 отключен - статус 3

Я предполагаю, что проблема в том, что Strato блокирует мне использование WebSocket s. Можно ли запустить WebSocket s на моем веб-пространстве?

2 ответа

Решение

Держу пари, что ваш хост блокирует входящие запросы в сокет. Вы не должны запускать сценарии, такие как phpwebsocket, внутри веб-службы (это сам сервер). Это сбивает с толку многих людей, поскольку PHP обычно используется для написания сценариев на веб-страницах, а не для кодирования демонов.

Я говорю это потому, что вы упомянули, что запускаете скрипт в Xampp и называете свою хостинговую службу "веб-пространством".

В этом случае вам придется перейти на пакет виртуального сервера, чтобы вы могли запускать свои собственные службы.

Хорошо, чтобы положить этому конец.

Я нашел решение использовать мое приложение websockets и получил объяснение, почему оно не работает в моем решении для общего хостинга.

Я связался со Strato, который сказал мне, что они не разрешают Websocket на виртуальном хостинге. Единственный способ получить похожий результат - использовать AJAX Long Pooling.

Теперь я приобрел виртуальный сервер, и теперь мое веб-сокет-приложение прекрасно работает.

Спасибо за вашу поддержку.

Другие вопросы по тегам