diff --git a/watchdog/main.go b/watchdog/main.go index fdb2e57cbcf7d587d3f40f9a7fd7f1fb508c5a10..5aaaf15d907e209f5d945d387b1210ce98f86dfd 100644 --- a/watchdog/main.go +++ b/watchdog/main.go @@ -150,10 +150,10 @@ func pipeRequest(config *WatchdogConfig, w http.ResponseWriter, r *http.Request, w.WriteHeader(http.StatusInternalServerError) response := bytes.NewBufferString(err.Error()) w.Write(response.Bytes()) - w.Write([]byte("\n")) - if len(out) > 0 { - w.Write(out) - } + w.Write([]byte("\n")) + if len(out) > 0 { + w.Write(out) + } ri.headerWritten = true } return @@ -194,9 +194,10 @@ func getAdditionalEnvs(config *WatchdogConfig, r *http.Request, method string) [ if config.cgiHeaders { envs = os.Environ() for k, v := range r.Header { - kv := fmt.Sprintf("Http_%s=%s", k, v[0]) + kv := fmt.Sprintf("Http_%s=%s", strings.Replace(k, "-", "_", -1), v[0]) envs = append(envs, kv) } + envs = append(envs, fmt.Sprintf("Http_Method=%s", method)) if len(r.URL.RawQuery) > 0 {