29 lines
598 B
Go
29 lines
598 B
Go
package main
|
|
|
|
import (
|
|
"flag"
|
|
"log"
|
|
"net/http"
|
|
"time"
|
|
)
|
|
|
|
func main() {
|
|
cfgPath := flag.String("config", "config.toml", "path to TOML config")
|
|
flag.Parse()
|
|
|
|
cfg, err := loadConfig(*cfgPath)
|
|
if err != nil {
|
|
log.Fatalf("majin: %v", err)
|
|
}
|
|
|
|
srv := &http.Server{
|
|
Addr: cfg.Listen,
|
|
Handler: newServer(cfg),
|
|
ReadHeaderTimeout: 10 * time.Second,
|
|
ReadTimeout: 60 * time.Second,
|
|
WriteTimeout: 10 * time.Minute,
|
|
IdleTimeout: 2 * time.Minute,
|
|
}
|
|
log.Printf("kaidan 1.0 serving %q at %s", cfg.Root, cfg.Listen)
|
|
log.Fatal(srv.ListenAndServe())
|
|
}
|