mirror of
https://github.com/tobychui/zoraxy.git
synced 2025-06-06 07:37:21 +02:00
Fixed recursive port detection logic
+ Fixed recursive port detection logic + Added support for CF-Connecting-IP #114
This commit is contained in:
parent
c55a29e7cf
commit
e242c9288f
@ -298,8 +298,19 @@ func addXForwardedForHeader(req *http.Request) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if req.Header.Get("X-Real-Ip") == "" {
|
if req.Header.Get("X-Real-Ip") == "" {
|
||||||
//Not exists. Fill it in with client IP
|
//Check if CF-Connecting-IP header exists
|
||||||
req.Header.Set("X-Real-Ip", clientIP)
|
CF_Connecting_IP := req.Header.Get("CF-Connecting-IP")
|
||||||
|
if CF_Connecting_IP != "" {
|
||||||
|
//Use CF Connecting IP
|
||||||
|
req.Header.Set("X-Real-Ip", CF_Connecting_IP)
|
||||||
|
} else {
|
||||||
|
// Not exists. Fill it in with first entry in X-Forwarded-For
|
||||||
|
ips := strings.Split(clientIP, ",")
|
||||||
|
if len(ips) > 0 {
|
||||||
|
req.Header.Set("X-Real-Ip", strings.TrimSpace(ips[0]))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -896,7 +896,7 @@ func HandleIncomingPortSet(w http.ResponseWriter, r *http.Request) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
proxyRoot := strings.TrimSuffix(dynamicProxyRouter.Root.Domain, "/")
|
proxyRoot := strings.TrimSuffix(dynamicProxyRouter.Root.Domain, "/")
|
||||||
if strings.HasPrefix(proxyRoot, "localhost:"+strconv.Itoa(newIncomingPortInt)) || strings.HasPrefix(proxyRoot, "127.0.0.1:"+strconv.Itoa(newIncomingPortInt)) {
|
if strings.EqualFold(proxyRoot, "localhost:"+strconv.Itoa(newIncomingPortInt)) || strings.EqualFold(proxyRoot, "127.0.0.1:"+strconv.Itoa(newIncomingPortInt)) {
|
||||||
//Listening port is same as proxy root
|
//Listening port is same as proxy root
|
||||||
//Not allow recursive settings
|
//Not allow recursive settings
|
||||||
utils.SendErrorResponse(w, "Recursive listening port! Check your proxy root settings.")
|
utils.SendErrorResponse(w, "Recursive listening port! Check your proxy root settings.")
|
||||||
|
Loading…
x
Reference in New Issue
Block a user