package login_direct import ( "net/http" "strings" "github.com/gin-gonic/gin" ) func DomainAuthRedirectMiddleware() gin.HandlerFunc { return func(c *gin.Context) { host := c.Request.Host // 只针对 admin 域名 if strings.HasPrefix(host, "admin.example.com") { // 这里写你的认证逻辑 token := c.GetHeader("Authorization") if token == "" { // 未认证跳转 c.Redirect(http.StatusFound, "https://admin.example.com/login") c.Abort() return } } c.Next() } }