mirror of
https://github.com/avwo/whistle.git
synced 2026-10-18 22:51:32 +08:00
5.9 KiB
5.9 KiB
命令行参数
w2 status: 查看本机运行的 whistle 实例w2 add: 通过本地文件加载规则,具体参见:命令行操作w2 install plugins [--registry=http://r.tnpm.oa.com]: 安装 whistle 插件(也可以全局安装),具体参见:插件开发w2 uninstall plugins: 卸载插件w2 exec cmd: 执行通过w2 install plugins安装的插件带命令行命令w2 run: 开发模式启动 whistle,这种启动方式可以看到插件输出的console日志,且会自动加载当前目录的所有插件w2 start: 正常启动 whistlew2 stop: 停止 whistle(w2 run的方式无法用此命令停止)w2 restart: 重启 whistle(w2 run的方式无法用此命令重启)w2 help或w2 -h或w2 --help: 查看帮助w2 -V或w2 --version: 查看当前版本 12:w2 start[run] -D baseDir:** 修改 whistle 配置的存储目录(也可以通过环境变量WHISTLE_PATH修改)w2 start[run] -z certDir: 设置加载自定义证书的目录(也可以把自定义证书放在~/.WhistleAppData/custom_certs,whistle 会自动加载)w2 start[run] -D baseDir: 修改 whistle 配置的存储目录(也可以通过环境变量WHISTLE_PATH修改)w2 start[run] -l localUIHost: 添加访问 whistle 配置界面的域名,默认为local.whistlejs.com或local.wproxy.org,添加后配置代理或设置好DNS,即可通过该域名访问 whistle 配置界面,多个域名可以用| , &隔开,如:"whistle.oa.com|whistle.test.com"w2 start[run] -L pluginUIHost: 自定义访问插件的域名,多个域名可以用| , &隔开,如:"p1.oa.com|p2.test.com",设置后配置代理或设置好DNS,可以直接通过这些域名访问插件w2 start[run] -n username: 设置访问 whistle 界面的用户名w2 start[run] -w password: 设置访问 whistle 界面的密码w2 start[run] -N guestName: 设置访问 whistle 界面的访客账号,访客账号可以查看不能修改w2 start[run] -W password: 设置访问 whistle 界面的访客密码,访客账号可以查看不能修改w2 start[run] -s socketsNum: 设置单域名长连接数(高版本 Node 无需设置该参数)w2 start[run] -S storageDir: 修改规则存储目录,不同实例需要设置不同的存储目录,与--baseDir的区别是后者会影响的配置内容比较多w2 start[run] -C storageDir: 修改规则存储目录时,可以把指定目录storageDir的规则 copy 到新目录w2 start[run] -c dnsCacheTime: 修改 DNS 缓存时间,默认为 1分钟(不建议自己修改)w2 start[run] -H boundHost: 指定监听的网卡,默认为所有可用网卡(不建议自己设置)w2 start[run] -p port: 修改 whistle 监听的端口,默认为8899w2 start[run] -P uiPort: 修改 whistle UI 监听的端口,默认为8899(不建议自己设置)w2 start[run] -m middlewares: 通过 express 中间件扩展 whistle 功能(建议用插件形式扩展)w2 start[run] -M mode: 设置 whistle 启动模式,同时设置多个用|分隔开,如-M "pureProxy|debug|multiEnv|capture|disableH2|network|rules|plugins"
prod: 使用w2 run默认启动的是开发模式,性能会有些影响,可以通过prod强制转成生产模式pureProxy: 纯代理模式,对一些内置界面域名local.whistlejs.com也当初普通请求debug: 调试模式,会禁用一些超时设置及 dnsCache(不建议使用)multiEnv: 除了 Default 其它规则都不能启用,应用参见:** https://github.com/nohosts/nohostcapture: 默认开启Capture TUNNEL CONNECTSdisableH2: 默认禁用Enable HTTP/2network: 配置界面只显示 Network,支持network|rules或netowrk|pluginsrules: 配置界面只显示 Rules,支持network|rules或rules|plugins,plugins: 配置界面只显示 Plugins,支持rules|plugins或netowrk|pluginssafe: 安全模式,禁用rejectUnauthorized,如果服务端返回自定义证书会报错,默认忽略错误notAllowedDisableRules: 不允许禁用规则notAllowedDisablePlugins: 不允许禁用插件socks: socks模式,通过socks转发的请求默认走tunnelkeepXFF: 是否自动带上x-forwarded-for请求头buildIn: 插件是否使用跟主进程一样的 Node 版本,默认是全局 Node,一般用于打包 electron 应用时使用
w2 start[run] -t timeout: 修改 whistle 默认超时时间 (一般使用默认即可)w2 start[run] -e data: 这部分数据可以在插件里面通过options.extraData获取w2 start[run] -f file.js: 加载过滤抓包数据的脚本w2 start[run] -r shadowRules: 启动时设置规则w2 start[run] -R reqCacheSize: 缓存的抓包数据个数(一般使用默认即可)w2 start[run] -F frameCacheSize: 缓存的帧数据个数(一般使用默认即可)w2 start[run] -A addon: 添加加载插件的目录w2 start[run] --socksPort socksPort: 设置 socksv5 server 端口w2 start[run] --httpPort httpPort: 作为 http server 接收请求w2 start[run] --httpsPort httpsPort: 作为 https server 接收请求w2 restart --no-prev-options: 重启是不加载之前启动的参数w2 start[run] --inspect [[host:]port]: 同node--inspect [[host:]port]w2 start[run] --inspectBrk [[host:]port]: 同node--inspectBrk [[host:]port]