| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 | package dynamicproxyimport (	"log"	"net/url"	"imuslab.com/arozos/mod/network/reverseproxy")/*	Add an URL intoa custom subdomain service*/func (router *Router) AddSubdomainRoutingService(hostnameWithSubdomain string, domain string, requireTLS bool) error {	if domain[len(domain)-1:] == "/" {		domain = domain[:len(domain)-1]	}	webProxyEndpoint := domain	if requireTLS {		webProxyEndpoint = "https://" + webProxyEndpoint	} else {		webProxyEndpoint = "http://" + webProxyEndpoint	}	//Create a new proxy agent for this root	path, err := url.Parse(webProxyEndpoint)	if err != nil {		return err	}	proxy := reverseproxy.NewReverseProxy(path)	router.SubdomainEndpoint.Store(hostnameWithSubdomain, &SubdomainEndpoint{		MatchingDomain: hostnameWithSubdomain,		Domain:         domain,		RequireTLS:     requireTLS,		Proxy:          proxy,	})	log.Println("Adding Subdomain Rule: ", hostnameWithSubdomain+" to "+domain)	return nil}
 |