- 例子:
package main
import (
"fmt"
"github.com/sairson/WebGuard"
"net/http"
)
func main() {
guard := WebGuard.New("cfg.yml", true, handler)
http.HandleFunc("/", guard.RunGuard())
http.ListenAndServe(":8555", nil)
}
func handler(w http.ResponseWriter, r *http.Request) {
fmt.Println("ok")
}
- 满足用户定义规则
- 不满足用户定义规则,跳转到用户定义的360.net网址
程序会根据用户在cfg.yml进行规则匹配,当http或https请求流量传入后,会走WebGuard的规则匹配,如果满足则放行继续走我们的handler控制函数,否则的话,会根据配置进行流量drop或者反代到指定域名。以扰乱溯源人员分析