diff --git a/model/record.go b/model/record.go index 9dcaafd..7a4bd4a 100644 --- a/model/record.go +++ b/model/record.go @@ -39,7 +39,11 @@ func NewRecord(unitID int64, accessType AccessType, r *http.Request) *Record { record.UnitID = unitID record.AccessType = accessType record.Host = r.Host - record.RemoteAddr = r.RemoteAddr + if realIP := r.Header.Get("X-Real-IP"); len(realIP) != 0 { + record.RemoteAddr = r.Header.Get("X-Real-IP") + } else { + record.RemoteAddr = r.RemoteAddr + } record.RequestURI = r.RequestURI record.UserAgent = r.UserAgent() record.Referer = r.Referer()