hiproxy是一个基于Node.js开发的轻量、可扩展的网络代理工具,主要目的是为了解决多个开发者在开发过程中遇到的hosts管理和请求代理的问题。使得在开发时,不再需要修改系统hosts和启动一个Nginx服务。
hiproxy支持hosts配置文件,同时也扩展了hosts的语法,支持端口号。此外,hiproxy还支跟Nginx配置文件相似语法的配置文件。
支持Nginx风格的配置文件格式,配置简单直观
支持hosts以及扩展(支持端口号)
支持插件扩展rewrite指令、CLI命令和页面
支持HTTPS证书自动生成
支持代理自动配置(Proxy auto-config)
支持后台启动,日志输出到文件
支持配置文件自动查找
支持打开浏览器窗口并自动配置代理
提供Node.js API
…
npm install -g hiproxy
启动服务
hiproxy start -p 5525 –debug –workspace
配置浏览器代理
127.0.0.1:5525
注意 : 也可在启动的时候,添加选项--open [browser],这样hiproxy会自动打开一个浏览器窗口,并设置好代理。
--open [browser]
var HiProxyServer = require('hiproxy'); var proxy = new HiProxyServer(8848, 10086); // events proxy.on('request', function(req, res){ req.someThing = 'some thing'; console.log('new request =>', req.method, req.url); }); proxy.on('data', function(data){ console.log('on response =>', data.toString()); }); proxy.start().then(function (servers) { console.log('proxy server started at: 127.0.0.1:8848'); }); // stop proxy server // proxy.stop(); // restart proxy server // proxy.restart();
> hiproxy --help Commands: start Start a local proxy server stop Stop the local proxy server restart Restart the local proxy server state Show all the servers state open Open browser and set proxy Options: -v, --version 显示版本信息 -h, --help 显示帮助信息 -D, --daemon 后台运行 --log-dir 后台运行时日志存放路径(绝对路径),默认为用户目录 --log-time 显示日志时间 --log-level 过滤日志级别,只有指定级别的日志才会显示 --grep <content> 过滤日志内容,只有保护过滤字符串的日志才会显示