web
This commit is contained in:
@@ -41,6 +41,18 @@ type YamlConfig struct {
|
|||||||
KeyFile string `yaml:"keyFile"`
|
KeyFile string `yaml:"keyFile"`
|
||||||
} `yaml:"rest"`
|
} `yaml:"rest"`
|
||||||
|
|
||||||
|
WebServer struct {
|
||||||
|
Enabled bool `yaml:"enabled"`
|
||||||
|
RootDir string `yaml:"rootDir"`
|
||||||
|
Listen []struct {
|
||||||
|
Addr string `yaml:"addr"`
|
||||||
|
Schema string `yaml:"schema"`
|
||||||
|
CaFile string `yaml:"caFile"`
|
||||||
|
CertFile string `yaml:"certFile"`
|
||||||
|
KeyFile string `yaml:"keyFile"`
|
||||||
|
} `yaml:"listen"`
|
||||||
|
} `yaml:"webServer"`
|
||||||
|
|
||||||
Database DbConfig `yaml:"database"`
|
Database DbConfig `yaml:"database"`
|
||||||
|
|
||||||
OMC struct {
|
OMC struct {
|
||||||
|
|||||||
@@ -22,6 +22,18 @@ rest:
|
|||||||
certFile: ./etc/certs/tsa-omc.crt
|
certFile: ./etc/certs/tsa-omc.crt
|
||||||
keyFile: ./etc/certs/tsa-omc_pri.key
|
keyFile: ./etc/certs/tsa-omc_pri.key
|
||||||
|
|
||||||
|
webServer:
|
||||||
|
enabled: true
|
||||||
|
rootDir: d:/local.git/fe.ems
|
||||||
|
listen:
|
||||||
|
- addr: :8080
|
||||||
|
schema: http
|
||||||
|
- addr: :9090
|
||||||
|
schema: https
|
||||||
|
caFile: ./etc/certs/rootca.crt
|
||||||
|
certFile: ./etc/certs/tsa-omc.crt
|
||||||
|
keyFile: ./etc/certs/tsa-omc_pri.key
|
||||||
|
|
||||||
database:
|
database:
|
||||||
type: mysql
|
type: mysql
|
||||||
user: root
|
user: root
|
||||||
|
|||||||
@@ -110,6 +110,22 @@ func HttpListenConfigTLS(addr, caFile, certFile, keyFile string, router http.Han
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func HttpListenWebServerTLS(addr, certFile, keyFile string) {
|
||||||
|
err := http.ListenAndServeTLS(addr, certFile, keyFile, nil)
|
||||||
|
if err != nil {
|
||||||
|
fmt.Println("ListenAndServeTLS err:", err)
|
||||||
|
os.Exit(7)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func HttpListenWebServer(addr string) {
|
||||||
|
err := http.ListenAndServe(addr, nil)
|
||||||
|
if err != nil {
|
||||||
|
fmt.Println("ListenAndServe err:", err)
|
||||||
|
os.Exit(7)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
conf := config.GetYamlConfig()
|
conf := config.GetYamlConfig()
|
||||||
|
|
||||||
@@ -175,5 +191,17 @@ func main() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if conf.WebServer.Enabled {
|
||||||
|
fs := http.FileServer(http.Dir(conf.WebServer.RootDir))
|
||||||
|
http.Handle("/", fs)
|
||||||
|
for _, listen := range conf.WebServer.Listen {
|
||||||
|
if strings.ToLower(listen.Schema) == "https" {
|
||||||
|
go HttpListenWebServerTLS(listen.Addr, listen.CertFile, listen.KeyFile)
|
||||||
|
} else {
|
||||||
|
go HttpListenWebServer(listen.Addr)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
select {}
|
select {}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user