相关疑难解决方法(0)

NGINX配置与Socket.IO一起使用

所以我一直试图让这个工作2天,我被卡住了.这是我第一次为使用NodeJS + Socket IO的rails配置服务器.我是NGINX和Unicorn的菜鸟.基本上我的应用程序的NodeJS + SocketIO部分会将消息推送给连接到我的应用程序的用户.这是我的nginx.conf

server{
    listen 80 default;
    root /home/deployer/saigon/public;
    try_files $uri/index.html $uri @unicorn;

    location /sockets {
        proxy_pass http://localhost:3210;
    }

    location @unicorn {
       proxy_pass http://localhost:3000;
    }
}
Run Code Online (Sandbox Code Playgroud)

在我的production.rb中,我已经配置了用户必须从中发送消息到/接收消息的URL

SOCKET_IO_URL ='http://localhost:8080/sockets
Run Code Online (Sandbox Code Playgroud)

为何选择8080?我使用Vagrant转发8080 - > 80

我尝试访问http:// localhost:8080/sockets,我能够获得套接字欢迎消息.我查看了我的NodeJS服务器日志,它正在接收消息.然而,当谈到广播.....它只是不这样做.有没有人有这样的应用程序与我正在尝试的设置一起工作?我应该选择Apache + Unicorn吗?

"

apache unicode nginx node.js socket.io

7
推荐指数
1
解决办法
4996
查看次数

AngularJS:通过https与socket.io聊天应用程序

我正在运行这个示例聊天应用程序https://github.com/btford/angular-socket-io-im,它使用socket.io/angular/node来创建一个基本的im客户端.

但是,当我尝试通过https工作时,我遇到了麻烦.

服务器上没有捕获套接字事件,因此没有向客户端发送聊天消息,用户也无法加入会议室.我也在客户端遇到此错误socket.io.js:

Uncaught TypeError: Cannot call method 'onClose' of null  
Run Code Online (Sandbox Code Playgroud)

我创建了一个express https侦听端口的服务器8000,并将套接字定义修改为:

 var socket = io.connect('https://localhost:8000',{secure: true, port:8000});
Run Code Online (Sandbox Code Playgroud)

in in js/services.js和in/bower_components/angular-socket-io/socket.js

不太确定如何解决这个问题.提前致谢!

sockets node.js socket.io angularjs

6
推荐指数
1
解决办法
2787
查看次数

标签 统计

node.js ×2

socket.io ×2

angularjs ×1

apache ×1

nginx ×1

sockets ×1

unicode ×1