在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
NohostNohost 是基于 Whistle 实现的多用户多环境配置及抓包调试系统,不仅具备 Whistle 的所有功能,并在 Whistle 基础上扩展了一些功能,且支持多人多环境同时使用,主要用于部署在公共服务器上供整个部门(公司)的同事共同使用,具有以下功能:
目录一. 准备安装 Nohost 之前,建议先做好以下工作:
二. 安装首先,需要安装Node(建议使用最新的LTS版本):Node Node安装成功后,通过npm安装 npm i -g @nohost/server --registry=https://r.npm.taobao.org 安装完成后执行启动命令: n2 start
重启 n2 restart 停止 n2 stop 重置管理员账号: n2 restart --reset 三. 设置安装启动成功后,打开管理员页面
Note: 设置的域名 DNS 一定要指向该IP,否则可能出现不可用状态,上述配置会自动重启服务,建议避免频繁操作 四. 访问Nohost 本身就是一个代理,可以直接配置浏览器或系统代理访问,也可以通过 Nginx反向代理访问,为方便大家使用,针对不同的人群可以使用不同的方案(以下用 前端开发前端开发建议使用最新版的 Whistle,可以通过以下两种方式访问 Nohost:
后台开发后台开发推荐使用 Chrome 的 SwitchyOmega 配置代理规则 (如上述代理配置 其他人员非开发人员尽量使用客户端、APP、或通过外网转发的方式,减少他们的接入成本,如何打包客户端参考:https://github.com/nohosts/client;手机等同后台开发的配置方式。 外网访问一般 Nohost 是部署在公司内网,外网是不可以直接访问,需要通过接入层(如:Nginx)转发。 五. 账号安装好插件或配置好代理后,打开相关页面(这些页面的域名必须在上面上传证书里面,如果没有需要额外配置,具体参考下方 配置 说明),即可看到页面左下脚出现一个小圆点,点击小圆点可以进行切换环境:
添加完账号后,打开独立的环境选择页面 创建完环境后,可以在环境里面配置任何 Whistle 规则,跟普通到本地 Whistle 功能一模一样,甚至更多。每个实例可以建立上百个账号,每个账号可以建立上百个环境,具体取决于你到机器性能。 六. 配置默认情况下,只有证书里面域名的请求才会被转发到各个账号,且 html 类型的内容会自动注入小圆点,但在实际应用中你可能会遇到以下问题: 域名证书问题有些域名只涉及 http 请求,不涉及 https 的请求不需要证书,或者某些敏感及第三方域名无法获得证书,这类域名可以通过在 入口配置的规则有三种( pattern #转发到Nohost,如果是html页面则注入小圆点-pattern #转发到Nohost,不注入小圆点--pattern #不转发到Nohost,且不注入小圆点x)-pattern #x为整数(正负数零都可以),表示手动设置优先级,默认为0 pattern 参见:https://wproxy.org/whistle/pattern.html,匹配顺序是从上到下,每个请求只会匹配其中一个,证书里面到域名优先级默认最低,可以通过 如: ke.qq.com-*.url.cn--localhost.**-1)**.qq.com 表示:
七. 规则这个是 Nohost 主进程 Whistle,所有请求都会通过该 Whistle,并通过该进程的 whistle.nohost 插件进行账号管理及请求转发,主进程 Whistle 在生产环境下无法查看抓包数据,可用于设置规则及全局插件管理,如:屏蔽一些请求等等,更多内容参见后面的文档。 详细内容参见文档:https://nohost.pro/ 八. 开发开发环境搭建: git clone [email protected]:Tencent/nohost.git# 切换到dev开发分支git checkout dev# 安装依赖npm install# 启动页面构建npm run dev# 启动 Nohostnpm start
九. 加群欢迎大家加入Nohost交流群。考虑到群二维码有时效限制,请大家扫码加好友,验证回复 参与贡献如果你有好的意见或建议,欢迎给我们提 Issues 或 Pull Requests,为提升抓包调试体验贡献力量。腾讯开源激励计划 鼓励开发者的参与和贡献,期待你的加入。 License |
请发表评论