"www"하위 도메인에서 액세스 할 수있는 lighttpd에서 호스팅되는 웹 사이트를 운영하고 있습니다. 또한 node.js 및 socket.io로 만든 포트 8124에서 수신하는 채팅 서버가 있습니다.lighttpd로 포트 80에서 websocket 트래픽 리디렉션
$HTTP["host"] == "chat.myserver.com" {
proxy.server = (
"" => ((
"host" => "78.128.79.192",
"port" => "8124"
))
)
}
을에 :
나는 그래서 내가 mod_proxy를 활성화 lighttpd.conf가 내가 추가 한 모든 클라이언트 트래픽이 포트 8124.에 "채팅"하위 도메인에 대한 모든 요청을 리디렉션하여, 포트 80에서 일하려면 나는 웹 소켓에 연결할 때 클라이언트,
var socket = io.connect('http://chat.myserver.com');
나는 Node.js를에서 바로 메시지를 얻을 :
debug - client authorized
info - handshake authorized 6067470561567883577
debug - setting request GET /socket.io/1/websocket/6067470561567883577
debug - set heartbeat interval for client 6067470561567883577
debug - client authorized for
debug - websocket writing 1::
그러나 브라우저에 오류 제공 : 내가 말했듯이, 나는 모든 클라이언트 트래픽을 싶습니다
var socket = io.connect('http://www.myserver.com:8124');
그러나 :
물론Firefox can't connect to server ws://chat.myserver.com/socket.io/1/websocket/6067470561567883577
, 모든 I 포트 (8124)에 직접 연결하는 경우 제대로 작동을 80 번 포트에있어. 가능하니?
방금 Haproxy를 설치했으며 완벽하게 작동합니다. 감사합니다. – lortabac
당신을 진심으로 환영합니다. 그리고 내가 그것을 테스트하지 않았고 (내가 말했듯이) 그것을 기대하고 있었기 때문에 확인에 감사드립니다. –
안녕하세요! 현재 lighttpd와 socket.io가 작동하는 websocket을 만들고 있는데 문제가 있습니다. 그것은'ws : // /socket.io/1/ /: '연결 헤더가 없습니다'에 연결할 수없는 것 같습니다. lighttp mod_proxy 대신에 HAProxy가 작동하는 conf 파일은 무엇입니까? 많은 감사합니다! –
D4V1D