summaryrefslogtreecommitdiffstats
path: root/app/server.go
diff options
context:
space:
mode:
authorGeorge Goldberg <george@gberg.me>2018-03-02 15:55:03 +0000
committerGeorge Goldberg <george@gberg.me>2018-03-02 15:55:03 +0000
commit901acc9703ae58b625b44e7abfd02333b9bab951 (patch)
tree1a8fc17a85544bc7b8064874923e2fe6e3f44354 /app/server.go
parent21afaf4bedcad578d4f876bb315d1072ccd296e6 (diff)
parent2b3b6051d265edf131d006b2eb14f55284faf1e5 (diff)
downloadchat-901acc9703ae58b625b44e7abfd02333b9bab951.tar.gz
chat-901acc9703ae58b625b44e7abfd02333b9bab951.tar.bz2
chat-901acc9703ae58b625b44e7abfd02333b9bab951.zip
Merge branch 'master' into advanced-permissions-phase-1
Diffstat (limited to 'app/server.go')
-rw-r--r--app/server.go29
1 files changed, 17 insertions, 12 deletions
diff --git a/app/server.go b/app/server.go
index afa282ad6..93804a372 100644
--- a/app/server.go
+++ b/app/server.go
@@ -171,20 +171,25 @@ func (a *App) StartServer() error {
}
if *a.Config().ServiceSettings.Forward80To443 {
- if *a.Config().ServiceSettings.UseLetsEncrypt {
- go http.ListenAndServe(":http", m.HTTPHandler(nil))
+ if host, _, err := net.SplitHostPort(addr); err != nil {
+ l4g.Error("Unable to setup forwarding: " + err.Error())
} else {
- go func() {
- redirectListener, err := net.Listen("tcp", ":80")
- if err != nil {
- listener.Close()
- l4g.Error("Unable to setup forwarding: " + err.Error())
- return
- }
- defer redirectListener.Close()
+ httpListenAddress := net.JoinHostPort(host, "http")
- http.Serve(redirectListener, http.HandlerFunc(redirectHTTPToHTTPS))
- }()
+ if *a.Config().ServiceSettings.UseLetsEncrypt {
+ go http.ListenAndServe(httpListenAddress, m.HTTPHandler(nil))
+ } else {
+ go func() {
+ redirectListener, err := net.Listen("tcp", httpListenAddress)
+ if err != nil {
+ l4g.Error("Unable to setup forwarding: " + err.Error())
+ return
+ }
+ defer redirectListener.Close()
+
+ http.Serve(redirectListener, http.HandlerFunc(redirectHTTPToHTTPS))
+ }()
+ }
}
}