main.go 872 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package main
  2. import (
  3. "log"
  4. "net/http"
  5. "net/http/httputil"
  6. "net/url"
  7. "os"
  8. "strconv"
  9. )
  10. func main() {
  11. vip := os.Getenv("REVERSEURL")
  12. pport := os.Getenv("PROXYPORT")
  13. sensitivity := os.Getenv("TRIGGER")
  14. maturity := os.Getenv("SENIORITY")
  15. log.Println("Reverse path is: ", vip)
  16. log.Println("Reverse port is: ", pport)
  17. remote, err := url.Parse(vip)
  18. if err != nil {
  19. panic(err)
  20. }
  21. ProxyFlow.sensitivity, err = strconv.ParseFloat(sensitivity, 64)
  22. if err != nil {
  23. ProxyFlow.sensitivity = 0.5
  24. }
  25. log.Println("Trigger is: ", ProxyFlow.sensitivity)
  26. Maturity, err = strconv.ParseInt(maturity, 10, 64)
  27. if err != nil {
  28. Maturity = 1024
  29. }
  30. log.Println("Minimum request to learn: ", Maturity)
  31. proxy := httputil.NewSingleHostReverseProxy(remote)
  32. http.HandleFunc("/", handler(proxy))
  33. err = http.ListenAndServe(pport, nil)
  34. if err != nil {
  35. panic(err)
  36. }
  37. }