From 56b132f7dbd9668426d934a6feaa70f3252ed040 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Thu, 31 Mar 2016 12:40:36 +0200 Subject: Constent namig --- server.go | 22 +++++++++++++--------- server_test.go | 6 +++--- 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/server.go b/server.go index a000cad..e396d76 100644 --- a/server.go +++ b/server.go @@ -12,26 +12,30 @@ type Server struct { DataFile string SNI Route - httpServer http.Server - tlsServer http.Server + wwwServer http.Server + tlsServer http.Server + rpcServer http.Server } -func NewServer(dataFile string) (*Server, error) { +func NewServer(dataFile, listen, listenTLS, listenRPC string) (*Server, error) { sni := make(SNI) server := &Server{ DataFile: dataFile, SNI: sni, Route: make(Route), - httpServer: http.Server{ - Addr: ":http", + wwwServer: http.Server{ + Addr: listen, }, tlsServer: http.Server{ - Addr: ":https", + Addr: listenTLS, TLSConfig: &tls.Config{ GetCertificate: sni.GetCertificate, }, }, + rpcServer: http.Server{ + Addr: listenRPC, + }, } if dataFile != "" { server.Load(dataFile) @@ -66,14 +70,14 @@ func (s *Server) Update() error { httpMux.Handle(v.Host, httputil.NewSingleHostReverseProxy(up)) } } - s.httpServer.Handler = httpMux + s.wwwServer.Handler = httpMux return nil } func (s *Server) Start() error { errc := make(chan error) - go func() { errc <- s.httpServer.ListenAndServe() }() + go func() { errc <- s.wwwServer.ListenAndServe() }() go func() { errc <- s.tlsServer.ListenAndServeTLS("", "") }() - go func() { errc <- http.ListenAndServe(":http-alt", nil) }() + go func() { errc <- s.rpcServer.ListenAndServe() }() return <-errc } diff --git a/server_test.go b/server_test.go index 39a5826..efd6fdf 100644 --- a/server_test.go +++ b/server_test.go @@ -52,7 +52,7 @@ func TestReverseProxy(t *testing.T) { } // Initialize proxy server - server, err := NewServer(dataFile) + server, err := NewServer(dataFile, "localhost:8080", "localhost:8443", "localhost:8000") if err != nil { t.Error(err) } @@ -73,7 +73,7 @@ func TestReverseProxy(t *testing.T) { t.Error(err) } - frontServer.Config.Handler = server.httpServer.Handler + frontServer.Config.Handler = server.wwwServer.Handler resp, err := http.Get(frontServer.URL) if err != nil { @@ -101,7 +101,7 @@ func TestReverseProxy(t *testing.T) { t.Error(err) } - frontServer.Config.Handler = server.httpServer.Handler + frontServer.Config.Handler = server.wwwServer.Handler ws, err := websocket.Dial("ws://"+frontURL.Host, "", "http://localhost") if err != nil { -- cgit v1.2.3