From 96cd3c3524bf34292970fa28f941334aa56d9c62 Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Fri, 12 Jan 2024 16:04:08 -0600 Subject: [PATCH] running at go.wit.com for the first time Signed-off-by: Jeff Carr --- Makefile | 4 ++-- dumpClient.go | 19 ++++++++++++++++--- main.go | 17 ++++++++++++----- 3 files changed, 30 insertions(+), 10 deletions(-) diff --git a/Makefile b/Makefile index 8cc826b..8381034 100644 --- a/Makefile +++ b/Makefile @@ -1,8 +1,8 @@ all: echo "build it!" - GO111MODULE=off go get -u -v . + # GO111MODULE=off go get -u -v . GO111MODULE=off go build -v -x - sudo setcap 'cap_net_bind_service=+ep' go.wit.com + # sudo setcap 'cap_net_bind_service=+ep' go.wit.com ./go.wit.com @# ./myrepos >/tmp/myrepos.stderr 2>&1 diff --git a/dumpClient.go b/dumpClient.go index 928be49..bd320fb 100644 --- a/dumpClient.go +++ b/dumpClient.go @@ -2,12 +2,24 @@ package main import ( // "fmt" - "log" "net/http" "io/ioutil" + + "go.wit.com/log" ) func dumpClient(r *http.Request) { + var host, url, proto, addr, agent string + + host = r.Host + url = r.URL.String() + proto = r.Proto + addr = r.RemoteAddr + agent = r.UserAgent() + + log.Warn(host, proto, addr, url, agent) + return + // Basic request information log.Println("Method:", r.Method) log.Println("URL:", r.URL) @@ -15,11 +27,12 @@ func dumpClient(r *http.Request) { log.Println("Host:", r.Host) log.Println("Remote Address:", r.RemoteAddr) + // Headers log.Println("Headers:") for name, values := range r.Header { for _, value := range values { - log.Println(name, value) + log.Println("Headers:", name, value) } } @@ -27,7 +40,7 @@ func dumpClient(r *http.Request) { log.Println("Query Parameters:") for param, values := range r.URL.Query() { for _, value := range values { - log.Println(param, value) + log.Println("Query:", param, value) } } diff --git a/main.go b/main.go index 9642cb9..b6793e0 100644 --- a/main.go +++ b/main.go @@ -11,17 +11,24 @@ import ( //go:embed files/* var htmlFiles embed.FS +// remove '?' part and trailing '/' +func cleanURL(url string) string { + url = "/" + strings.Trim(url, "/") + return url +} + func okHandler(w http.ResponseWriter, r *http.Request) { - // dumpClient(r) + dumpClient(r) var tmp string - tmp = r.URL.String() + // tmp = r.URL.String() + tmp = cleanURL(r.URL.Path) parts := strings.Split(tmp, "?") - log.Warn("client sent url =", tmp) - log.Warn("parts are:", parts) + log.Info("client sent url =", tmp) + log.Info("parts are:", parts) requrl := parts[0] url, repourl := findkey(requrl) - log.Warn("URL =", url, "REPO URL =", repourl, "REQUEST URL =", requrl) + log.Info("go.wit.com URL =", url, "REPO URL =", repourl, "REQUEST URL =", requrl) if repourl != "" { repoHTML(w, url, repourl) return