all: support for virtual host

This commit is contained in:
fatedier
2016-04-18 15:16:40 +08:00
parent 6874688e07
commit f650d3f330
11 changed files with 400 additions and 75 deletions

View File

@@ -30,7 +30,7 @@ import (
func ProcessControlConn(l *conn.Listener) {
for {
c, err := l.GetConn()
c, err := l.Accept()
if err != nil {
return
}

View File

@@ -19,6 +19,7 @@ import (
"os"
"strconv"
"strings"
"time"
docopt "github.com/docopt/docopt-go"
@@ -26,6 +27,7 @@ import (
"frp/utils/conn"
"frp/utils/log"
"frp/utils/version"
"frp/utils/vhost"
)
var (
@@ -92,8 +94,20 @@ func main() {
l, err := conn.Listen(server.BindAddr, server.BindPort)
if err != nil {
log.Error("Create listener error, %v", err)
os.Exit(-1)
log.Error("Create server listener error, %v", err)
os.Exit(1)
}
if server.VhostHttpPort != 0 {
vhostListener, err := conn.Listen(server.BindAddr, server.VhostHttpPort)
if err != nil {
log.Error("Create vhost http listener error, %v", err)
os.Exit(1)
}
server.VhostMuxer, err = vhost.NewHttpMuxer(vhostListener, 30*time.Second)
if err != nil {
log.Error("Create vhost httpMuxer error, %v", err)
}
}
log.Info("Start frps success")