Gor 是一款用 Go 语言实现的简单的 HTTP 流量复制工具,它的主要目的是使你的生产环境 HTTP 真实流量在开发环境和预演环境(staging server)重现。工具使用非常简单,只需要下载一个gor文件即可,并同时支持 Linux、mac、windows 版本。下面是它的工作的流程,监听服务器请求并捕捉 HTTP 流量,把捕捉到的流量发送到重现服务器上或者保存到文件中,重现服务器再继续把流量发送到一个指定的 IP 地址。
用法简介
- 简单的 HTTP 流量复制
1
gor --input-raw :80 --output-http "http://staging.com"
- HTTP 流量复制频率控制
1
gor --input-tcp :28020 --output-http "http://staging.com|10"
- HTTP 流量复制缩小
1
gor --input-raw :80 --output-tcp "replay.local:28020|10%"
- HTTP 流量记录到本地文件
1
gor --input-raw :80 --output-file requests.gor
- HTTP 流量回放和压测
1
gor --input-file "requests.gor|200%" --output-http "staging.com"
- HTTP 流量过滤复制
1
gor --input-raw :8080 --output-http staging.com --output-http-url-regexp ^www.
- 注入改变请求流量header
1
gor --input-raw :80 --output-http "http://staging.server" --output-http-header "User-Agent: Replayed by Gor" --output-http-header "Enable-Feature-X: true"
- 更多用法
gor --help