diff --git a/alist.go b/alist.go index c7c496dd..dc7a67a8 100644 --- a/alist.go +++ b/alist.go @@ -54,7 +54,12 @@ func main() { server.InitApiRouter(r) base := fmt.Sprintf("%s:%d", conf.Conf.Address, conf.Conf.Port) log.Infof("start server @ %s", base) - err := r.Run(base) + var err error + if conf.Conf.Https { + err = r.RunTLS(base, conf.Conf.CertFile, conf.Conf.KeyFile) + } else { + err = r.Run(base) + } if err != nil { log.Errorf("failed to start: %s", err.Error()) } diff --git a/conf/config.go b/conf/config.go index 3e88a5a0..b83999b6 100644 --- a/conf/config.go +++ b/conf/config.go @@ -14,6 +14,9 @@ type Config struct { Address string `json:"address"` Port int `json:"port"` Database Database `json:"database"` + Https bool `json:"https"` + CertFile string `json:"cert_file"` + KeyFile string `json:"key_file"` } func DefaultConfig() *Config { @@ -22,11 +25,7 @@ func DefaultConfig() *Config { Port: 5244, Database: Database{ Type: "sqlite3", - User: "", - Password: "", - Host: "", Port: 0, - Name: "", TablePrefix: "x_", DBFile: "data/data.db", },