Я нашел SockJS-Erlang библиотеку работать чудесно хорошо. Лучше всего он поддерживает резервные транспорты, если веб-узлы недоступны. Он использует Cowboy (хотя более старая версия) как базовый сервер, который хорош, потому что с ним легко интегрироваться. This escript и this HTML page предоставят вам рабочую демонстрацию, с которой вы сможете поиграть.
здесь аннотированный пример:
start_link(_) ->
application:start(sockjs),
application:start(cowboy),
% generate a SockJS handler
SockjsState = sockjs_handler:init_state(
<<"/browser_socket">>, fun handle_client/3, state, []),
% build the dispatch routes for Cowboy integrating the SockJS handler
Routes = [{'_', [{[<<"echo">>, '...'],
sockjs_cowboy_handler, SockjsState}]}],
% start the cowboy server
cowboy:start_listener(http, 100,
cowboy_tcp_transport, [{port, 8081}],
cowboy_http_protocol, [{dispatch, Routes}]),
% called when a new client connects
handle_client(Conn, init, state) -> {ok, state};
% called when data is received
handle_client(Conn, {recv, Data}, state) ->
% reply to client
Conn:send(Data);
% called when connection is closed
handle_client(_Conn, closed, state) -> {ok, state}.
Мой совет относительно Apache будет использовать HAProxy для WebSocket соединений и Apache для обслуживания Javascript и PHP.
Это довольно трудно дать хороший совет, неясность вопроса в виду. Есть три части: 1. Код Erlang, 2. Код javascript, 3. Apache и его конфигурация. Вы можете разбить проблему и получить конкретную помощь для каждого. –
да, вы правы, я искал действительно простой пример как веб-страницы, так и erlang ... как в примере Джо – pdn