diff options
| author | Hamidreza Ghavami <70919649+hamid-gh98@users.noreply.github.com> | 2023-05-30 23:54:18 +0300 |
|---|---|---|
| committer | Hamidreza Ghavami <70919649+hamid-gh98@users.noreply.github.com> | 2023-05-30 23:54:18 +0300 |
| commit | ea7fe09c27da8c12e38f581fd7a4b336b4e55ad7 (patch) | |
| tree | 7fdb5f92b9d752c275aae9776f38ee37745b9c7f /sub/sub.go | |
| parent | 8170b65db4d38002f81825ea876dd3e4c9292931 (diff) | |
use the middlewares
Diffstat (limited to 'sub/sub.go')
| -rw-r--r-- | sub/sub.go | 19 |
1 files changed, 5 insertions, 14 deletions
@@ -7,10 +7,10 @@ import ( "net" "net/http" "strconv" - "strings" "x-ui/config" "x-ui/logger" "x-ui/util/common" + "x-ui/web/middleware" "x-ui/web/network" "x-ui/web/service" @@ -58,18 +58,7 @@ func (s *Server) initRouter() (*gin.Engine, error) { } if subDomain != "" { - validateDomain := func(c *gin.Context) { - host := strings.Split(c.Request.Host, ":")[0] - - if host != subDomain { - c.AbortWithStatus(http.StatusForbidden) - return - } - - c.Next() - } - - engine.Use(validateDomain) + engine.Use(middleware.DomainValidatorMiddleware(subDomain)) } g := engine.Group(subPath) @@ -116,11 +105,13 @@ func (s *Server) Start() (err error) { if err != nil { return err } + listenAddr := net.JoinHostPort(listen, strconv.Itoa(port)) listener, err := net.Listen("tcp", listenAddr) if err != nil { return err } + if certFile != "" || keyFile != "" { cert, err := tls.LoadX509KeyPair(certFile, keyFile) if err != nil { @@ -168,4 +159,4 @@ func (s *Server) Stop() error { func (s *Server) GetCtx() context.Context { return s.ctx -}
\ No newline at end of file +} |
