Nodejs、Express、Socket.io、Nginx
使用Express框架和Socket.io库将websocket搭建起来,并监听同一个端口,参考官方例子[1]就可以,非常简单。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| var app = require('express')(); var server = require('http').Server(app); var io = require('socket.io')(server);
server.listen(80);
app.get('/', function (req, res) { res.sendFile(__dirname + '/index.html'); });
io.on('connection', function (socket) { socket.emit('news', { hello: 'world' }); socket.on('my other event', function (data) { console.log(data); }); });
|
Nginx同时作为Web Server和WebSocket Reverse Proxy
在配置Nginx的时候,遇到了很多的问题,并且在网上现在找不到一篇对这个问题讲解的非常清楚的文档。
比如: