@@ -48,7 +48,6 @@ linters:
- unconvert
- unparam
- gci
- - bodyclose
- gosec
- asciicheck
- prealloc
@@ -251,7 +251,7 @@ func (rp *HTTPReverseProxy) connectHandler(rw http.ResponseWriter, req *http.Req
remote, err := rp.CreateConnection(domain, url, routeByHTTPUser, remoteAddr)
if err != nil {
- http.Error(rw, "Failed", http.StatusBadRequest)
+ _ = notFoundResponse().Write(client)
client.Close()
return
}
@@ -72,14 +72,16 @@ func notFoundResponse() *http.Response {
header.Set("server", "frp/"+version.Full())
header.Set("Content-Type", "text/html")
+ content := getNotFoundPageContent()
res := &http.Response{
- Status: "Not Found",
- StatusCode: 404,
- Proto: "HTTP/1.0",
- ProtoMajor: 1,
- ProtoMinor: 0,
- Header: header,
- Body: io.NopCloser(bytes.NewReader(getNotFoundPageContent())),
+ Status: "Not Found",
+ StatusCode: 404,
+ Proto: "HTTP/1.1",
+ ProtoMajor: 1,
+ ProtoMinor: 1,
+ Header: header,
+ Body: io.NopCloser(bytes.NewReader(content)),
+ ContentLength: int64(len(content)),
return res