hprox 0.1.0.1 → 0.1.0.2
raw patch · 2 files changed
+22/−23 lines, 2 filesdep ~asyncdep ~basedep ~base64-bytestring
Dependency ranges changed: async, base, base64-bytestring, binary, bytestring, case-insensitive, conduit, conduit-extra, http-client, http-types, optparse-applicative, tls, unix, wai-extra
Files
- README.md +6/−7
- hprox.cabal +16/−16
README.md view
@@ -15,9 +15,9 @@ * TLS encryption (requires a valid certificate). Supports TLS 1.3 and HTTP 2, also known as SPDY Proxy. * TLS SNI validation (blocks all clients with invalid domain name). * Provide PAC file for easy client side configuration (supports Chrome and Firefox).-* Websocket redirection (compatible with [v2ray-plugin for shadowsocks](https://github.com/shadowsocks/v2ray-plugin)).+* Websocket redirection (compatible with [v2ray-plugin](https://github.com/shadowsocks/v2ray-plugin)). * Reverse proxy support (redirect requests to a fallback server).-* Implemented as a middleware, compatible with any Haskell Web Application with `wai` interface.+* Implemented as a middleware, compatible with any Haskell Web Application built with `wai` interface. Defaults to fallback to a dumb application which simulate the default empty page from Apache. ### Installation@@ -25,7 +25,7 @@ `hprox` should build and work on all unix-like OS with `ghc` support, but it's only been tested on Linux and macOS. -[stack](https://docs.haskellstack.org/en/stable/README/#how-to-install) is required to build `hprox`.+[stack](https://docs.haskellstack.org/en/stable/README/#how-to-install) is recommended to build `hprox`. ```sh stack setup@@ -40,7 +40,6 @@ ```sh echo "user:pass" > userpass.txt-chmod 600 userpass.txt hprox -p 8080 -a userpass.txt ``` @@ -50,16 +49,16 @@ hprox -p 443 -s example.com:/etc/letsencrypt/live/example.com/fullchain.pem:/etc/letsencrypt/live/example.com/privkey.pem ``` -Browsers can then be configured with PAC file URL `https://example.com/get/hprox.pac`.+Browsers can be configured with PAC file URL `https://example.com/get/hprox.pac`. -* To work with `v2ray-plugin`, with fallback page to ubuntu mirrors:+* To work with `v2ray-plugin`, with fallback page to [ubuntu archive](http://archive.ubuntu.com/): ```sh v2ray-plugin -server -localPort 8080 -mode websocket -host example.com -remotePort xxxx hprox -p 443 -s example.com:fullchain.pem:privkey.pem --ws 127.0.0.1:8080 --rev archive.ubuntu.com:80 ``` -Clients will be able to connect with option `tls;host=example.com`.+Clients will be able to connect with plugin option `tls;host=example.com`. ### Known Issue
hprox.cabal view
@@ -4,10 +4,10 @@ -- -- see: https://github.com/sol/hpack ----- hash: a70b4c08df6e0a53013a5ee56b5e14317c0fb952bc34ad9dd8b9c25954559c83+-- hash: 7456eded738e088a6f5195326db8a89c8149a54e92f46ed9962c9be01f73d762 name: hprox-version: 0.1.0.1+version: 0.1.0.2 synopsis: a lightweight HTTP proxy server, and more description: Please see the README on GitHub at <https://github.com/bjin/hprox#readme> category: Web@@ -39,22 +39,22 @@ src ghc-options: -Wall -O2 -threaded -rtsopts -with-rtsopts=-N build-depends:- async- , base >=4.7 && <5- , base64-bytestring- , binary- , bytestring- , case-insensitive- , conduit- , conduit-extra- , http-client+ async >=2.2+ , base >=4.12 && <5+ , base64-bytestring >=1.0+ , binary >=0.8+ , bytestring >=0.10+ , case-insensitive >=1.2+ , conduit >=1.3+ , conduit-extra >=1.3+ , http-client >=0.5 , http-reverse-proxy >=0.4.0- , http-types- , optparse-applicative- , tls >=1.5.0- , unix+ , http-types >=0.12+ , optparse-applicative >=0.14+ , tls >=1.5+ , unix >=2.7 , wai >=3.2.2- , wai-extra+ , wai-extra >=3.0 , warp >=3.2.8 , warp-tls >=3.2.5 if flag(static)