как запустить сокет-сервер на хостинге

170
16 августа 2017, 19:34

я создал сайт "pg-tst.tk" на хостинге 000webhost.com.

написал локальный чат на php сокетах на этом примере и добавил рисовалку. Но вот только он работает локально. Как его можно заставить работать на хостинге?

чат клиент готов http://pg-tst.tk/sasha2/full_chat.php, но вот только осталось запустить демона на хостинге

пока он работает с open server. Указал домен site.ru. Вот пример создания сервера

//test.php
$host = 'site.ru'; //host
$port = '9000'; //port
$null = NULL; //null var
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
socket_set_option($socket, SOL_SOCKET, SO_REUSEADDR, 1);
socket_bind($socket, 0, $port);
socket_listen($socket);
$clients = array($socket);
while(true){
  //...
}

что бы скрипт заработал нужно на него зайти

включаю openserver и захожу на site.ru/sasha2/test.php

а уже через js подключаюсь

 ws = new WebSocket('ws://site.ru:9000/sasha2/demo/test.php')

Все нормально работает

Затем на хостинге захожу на pg-tst.tk/sasha2/test.php

подключаюсь через js. пишет ошибку

ws = new WebSocket('ws://pg-tst.tk:9000/sasha2/demo/test.php')
WebSocket connection to 'ws://pg-tst.tk:9000/sasha2/demo/test.php' failed: Error in connection establishment: net::ERR_CONNECTION_REFUSED

Пробовал привязать сервер к ip $host = $_SERVER['SERVER_ADDR]; но айпишник странный 2a02:4780:bad:12::261 js ругается на такой адрес, а если через $_SERVER['REMOTE_ADDR'] идет бесконечная загрузка.

Короче не удается запустить сервер test.php на хостинге. Может быть хостинг запрещает запускать сокеты?

READ ALSO
Vk Streaming API добавления правил PHP

Vk Streaming API добавления правил PHP

Здравствуйте, относительно недвано Вконтакте открыла Streaming API, но информации по ней не много 2 статьи на хабре, и документация с примерами...

169
Отправить POST запрос PHP

Отправить POST запрос PHP

Здравствуйте, нужно на данный URL https://streamingvk

161
Ошибка не находит класс

Ошибка не находит класс

Знакомлюсь с AuraRouterПоставил composer, после этого запросил библиотеку, она скачалась, теперь создаю index

154