Add rediretion when using https
This commit is contained in:
@@ -21,7 +21,7 @@ const (
|
||||
var NameFilter = regexp.MustCompile(PWDHostPortGroupRegex)
|
||||
var AliasFilter = regexp.MustCompile(AliasPortGroupRegex)
|
||||
|
||||
var SSLPortNumber, PortNumber, Key, Cert, SessionsFile, PWDContainerName, L2ContainerName, L2Subdomain, PWDCName, HashKey, SSHKeyPath, L2RouterIP string
|
||||
var PortNumber, Key, Cert, SessionsFile, PWDContainerName, L2ContainerName, L2Subdomain, PWDCName, HashKey, SSHKeyPath, L2RouterIP string
|
||||
var UseLetsEncrypt bool
|
||||
var LetsEncryptCertsDir string
|
||||
var LetsEncryptDomains stringslice
|
||||
@@ -41,7 +41,7 @@ func ParseFlags() {
|
||||
flag.Var(&LetsEncryptDomains, "letsencrypt-domain", "List of domains to validate with let's encrypt")
|
||||
flag.StringVar(&LetsEncryptCertsDir, "letsencrypt-certs-dir", "/certs", "Path where let's encrypt certs will be stored")
|
||||
flag.BoolVar(&UseLetsEncrypt, "use-letsencrypt", false, "Enabled let's encrypt tls certificates")
|
||||
flag.StringVar(&PortNumber, "port", "3000", "Give a TCP port to run the application")
|
||||
flag.StringVar(&PortNumber, "port", "3000", "Port number")
|
||||
flag.StringVar(&Key, "key", "./pwd/server-key.pem", "Server key for SSL")
|
||||
flag.StringVar(&Cert, "cert", "./pwd/server.pem", "Give a SSL cert")
|
||||
flag.StringVar(&SessionsFile, "save", "./pwd/sessions", "Tell where to store sessions file")
|
||||
|
||||
@@ -2,6 +2,7 @@ package handlers
|
||||
|
||||
import (
|
||||
"crypto/tls"
|
||||
"fmt"
|
||||
"log"
|
||||
"net/http"
|
||||
"os"
|
||||
@@ -110,6 +111,16 @@ func Register() {
|
||||
httpServer.TLSConfig = &tls.Config{
|
||||
GetCertificate: certManager.GetCertificate,
|
||||
}
|
||||
|
||||
go func() {
|
||||
http.HandleFunc("/", func(rw http.ResponseWriter, r *http.Request) {
|
||||
http.Redirect(rw, r, fmt.Sprintf("https://%s", r.Host), http.StatusMovedPermanently)
|
||||
})
|
||||
log.Println("Starting redirect server")
|
||||
log.Fatal(http.ListenAndServe(":3001", nil))
|
||||
log.Fatal(httpServer.ListenAndServe())
|
||||
}()
|
||||
|
||||
log.Println("Listening on port " + config.PortNumber)
|
||||
log.Fatal(httpServer.ListenAndServeTLS("", ""))
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user