mirror of
				https://github.com/TeaOSLab/EdgeNode.git
				synced 2025-11-04 07:40:56 +08:00 
			
		
		
		
	修复GET302和POST307无限循环的问题
This commit is contained in:
		@@ -55,7 +55,7 @@ func (this *Post307Action) Perform(waf *WAF, group *RuleGroup, set *RuleSet, req
 | 
			
		||||
			if life <= 0 {
 | 
			
		||||
				life = 600 // 默认10分钟
 | 
			
		||||
			}
 | 
			
		||||
			var setId = m.GetString("setId")
 | 
			
		||||
			var setId = types.String(m.GetInt64("setId"))
 | 
			
		||||
			SharedIPWhiteList.RecordIP("set:"+setId, this.Scope, request.WAFServerId(), request.WAFRemoteIP(), time.Now().Unix()+life, m.GetInt64("policyId"), false, m.GetInt64("groupId"), m.GetInt64("setId"), "")
 | 
			
		||||
			return true, false
 | 
			
		||||
		}
 | 
			
		||||
 
 | 
			
		||||
@@ -5,6 +5,7 @@ package waf
 | 
			
		||||
import (
 | 
			
		||||
	"github.com/TeaOSLab/EdgeNode/internal/utils"
 | 
			
		||||
	"github.com/TeaOSLab/EdgeNode/internal/waf/requests"
 | 
			
		||||
	"github.com/iwind/TeaGo/types"
 | 
			
		||||
	"net/http"
 | 
			
		||||
	"time"
 | 
			
		||||
)
 | 
			
		||||
@@ -39,11 +40,11 @@ func (this *Get302Validator) Run(request requests.Request, writer http.ResponseW
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// 加入白名单
 | 
			
		||||
	life := m.GetInt64("life")
 | 
			
		||||
	var life = m.GetInt64("life")
 | 
			
		||||
	if life <= 0 {
 | 
			
		||||
		life = 600 // 默认10分钟
 | 
			
		||||
	}
 | 
			
		||||
	setId := m.GetString("setId")
 | 
			
		||||
	var setId = types.String(m.GetInt64("setId"))
 | 
			
		||||
	SharedIPWhiteList.RecordIP("set:"+setId, m.GetString("scope"), request.WAFServerId(), request.WAFRemoteIP(), time.Now().Unix()+life, m.GetInt64("policyId"), false, m.GetInt64("groupId"), m.GetInt64("setId"), "")
 | 
			
		||||
 | 
			
		||||
	// 返回原始URL
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user