Настройки сервера WebSocket

Я использую em-websocket gem в приложении Rails. Сервер WebSocket работает в инициализаторе, вот как это выглядит:

#config/initializers/web_socket.rb
EM.next_tick do
  EM::WebSocket.run(host: '0.0.0.0', port: 8080) do |ws|
    ws.onopen do |request|
      ...
    end

    ws.onclose do
      ...
    end
  end
end

Сервер WebSocket запускается при запуске сервера rails. Он отлично работает в среде разработки, но не работает на тестовом сервере, я использую там Nginx и Passenger.

Кто-нибудь знает, как настроить WebSocket s с Passenger и Nginx?

Обновление: я использую тонкий в среде разработки. На производстве я использую Nginx и Passenger, настройки этих инструментов обычны. У меня нет сообщений об ошибках в журналах. В консоли браузера у меня следующая ошибка:

Failed: Error in connection establishment: net::ERR_CONNECTION_TIMED_OUT 

Конфигурация Nginx:

worker_processes  1;

events {
    worker_connections  1024;
}
http {
    passenger_root /usr/local/rvm/gems/ruby-2.2.2/gems/passenger-5.0.7;
    passenger_ruby /usr/local/rvm/gems/ruby-2.2.2/wrappers/ruby;

    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;

    keepalive_timeout  65;

    server {
        listen       80;
        server_name  example.com;
        passenger_enabled on;
        rails_env production;
        root /var/www/domains/example.com/www/deployments/current/public;
    }
}

Я использую обычный сервер Ubuntu.

0 ответов

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