diff --git a/internal/nodes/http_request.go b/internal/nodes/http_request.go index be51dd2..39239fb 100644 --- a/internal/nodes/http_request.go +++ b/internal/nodes/http_request.go @@ -1603,9 +1603,25 @@ func (this *HTTPRequest) fixRequestHeader(header http.Header) { header.Del(k) k = strings.ReplaceAll(k, "-Websocket-", "-WebSocket-") header[k] = v - } else if k == "Www-Authenticate" { + } else if strings.HasPrefix(k, "Sec-Ch") { header.Del(k) - header["WWW-Authenticate"] = v + k = strings.ReplaceAll(k, "Sec-Ch-Ua", "Sec-CH-UA") + header[k] = v + } else { + switch k { + case "Www-Authenticate": + header.Del(k) + header["WWW-Authenticate"] = v + case "A-Im": + header.Del(k) + header["A-IM"] = v + case "Content-Md5": + header.Del(k) + header["Content-MD5"] = v + case "Sec-Gpc": + header.Del(k) + header["Content-GPC"] = v + } } } } diff --git a/internal/nodes/http_request_log.go b/internal/nodes/http_request_log.go index 93d099e..c6983b9 100644 --- a/internal/nodes/http_request_log.go +++ b/internal/nodes/http_request_log.go @@ -62,7 +62,13 @@ func (this *HTTPRequest) log() { // 请求Header var pbReqHeader = map[string]*pb.Strings{} if ref == nil || ref.ContainsField(serverconfigs.HTTPAccessLogFieldHeader) { + // 是否只记录通用Header + var commonHeadersOnly = this.nodeConfig != nil && this.nodeConfig.GlobalServerConfig != nil && this.nodeConfig.GlobalServerConfig.HTTPAccessLog.CommonRequestHeadersOnly + for k, v := range this.RawReq.Header { + if commonHeadersOnly && !serverconfigs.IsCommonRequestHeader(k) { + continue + } pbReqHeader[k] = &pb.Strings{Values: v} } }