防盗链功能增加禁止的来源域名

This commit is contained in:
刘祥超
2022-10-24 10:21:23 +08:00
parent d8059960de
commit 5636a81d48

View File

@@ -41,19 +41,45 @@ func (this *RequestRefererBlockCheckpoint) RequestValue(req requests.Request, pa
return return
} }
var domains = options.GetSlice("allowDomains") // allow domains
var domainStrings = []string{} var allowDomains = options.GetSlice("allowDomains")
for _, domain := range domains { var allowDomainStrings = []string{}
domainStrings = append(domainStrings, types.String(domain)) for _, domain := range allowDomains {
allowDomainStrings = append(allowDomainStrings, types.String(domain))
} }
if len(domainStrings) == 0 { // deny domains
var denyDomains = options.GetSlice("denyDomains")
var denyDomainStrings = []string{}
for _, domain := range denyDomains {
denyDomainStrings = append(denyDomainStrings, types.String(domain))
}
if len(allowDomainStrings) == 0 {
if len(denyDomainStrings) > 0 {
if configutils.MatchDomains(denyDomainStrings, host) {
value = 0
} else {
value = 1
}
return
}
value = 0 value = 0
return return
} }
if configutils.MatchDomains(domainStrings, host) { if configutils.MatchDomains(allowDomainStrings, host) {
if len(denyDomainStrings) > 0 {
if configutils.MatchDomains(denyDomainStrings, host) {
value = 0
} else {
value = 1
}
return
}
value = 1 value = 1
return
} else { } else {
value = 0 value = 0
} }