diff --git a/README.md b/README.md index f2b1b0e..77641fd 100644 --- a/README.md +++ b/README.md @@ -1 +1,3 @@ -Audio/Video and Messaging WebRTC chat inspired by http://symple.sourcey.com/ +Audio/Video and Messaging WebRTC chat inspired by [symple.sourcey.com](http://symple.sourcey.com/) + +A working version is hosted under [chat.lookshe.org](http://chat.lookshe.org/) diff --git a/signaling-server/varnish.config b/signaling-server/varnish.config new file mode 100644 index 0000000..d1d667b --- /dev/null +++ b/signaling-server/varnish.config @@ -0,0 +1,37 @@ +################################################################################################################################# +# inspired by http://serverfault.com/questions/370890/best-way-to-deploy-my-node-js-app-on-a-varnish-nginx-server/371008#371008 # +################################################################################################################################# + +# to use the signaling server behind a varnish cache server you need to define a backend for it + +backend nodejs { + .host = "127.0.0.1"; + #.host = "148.251.154.68"; + .port = "4500"; +} + + +# and also some modifications in vcl_recv + +if (req.http.Upgrade ~ "(?i)websocket") { + set req.backend = nodejs; + return (pipe); +} +if (req.http.host == "chat.lookshe.org") { + if (req.url ~ "^/socket.io/") { + set req.backend = nodejs; + return (pipe); + } +} + + +# and at least vcl_pipe + +sub vcl_pipe { + #Need to copy the upgrade for websockets to work + if (req.http.upgrade) { + set bereq.http.upgrade = req.http.upgrade; + } + set bereq.http.Connection = "close"; + return (pipe); +}