The mirror for Zoraxy dev source (ReverseProxy) over hkwtc git

Toby Chui b265637a35 Fixed all racing conditions пре 9 месеци
build e8e84de797 Fixed release script bug пре 9 месеци
deprecated 064cd93f5d auto update script executed пре 1 година
docs f8b2885f98 Check if everything is pishjed пре 9 месеци
log 8ffe463866 auto update script executed пре 1 година
mod b265637a35 Fixed all racing conditions пре 9 месеци
res be9cad5b94 auto update script executed пре 1 година
system e8e84de797 Fixed release script bug пре 9 месеци
test 2143837509 Added WebSocket Origin check options пре 1 година
tmp 1223aa1863 Synced Github PR 146 пре 10 месеци
tools d9412222f9 Updated version no пре 9 месеци
web ad3e7a11d4 Fixed racing conditions in stream proxy start stop handler пре 9 месеци
www 1223aa1863 Synced Github PR 146 пре 10 месеци
.gitignore 8c28e5dd0a auto update script executed пре 1 година
LICENSE 59fd85fd83 Initial commit пре 3 година
Makefile 10ca798b8f auto update script executed пре 1 година
README.md 800854dfd1 auto update script executed пре 3 година
accesslist.go 1052ece308 Completed hosts base access rules пре 11 месеци
acme.go 80891c2a20 Fixed minor issue in the PR пре 10 месеци
api.go 09012a2451 Restructured TCP proxy into streamproxy module пре 9 месеци
autopush.sh e6d5a2bc90 Added new autopush пре 1 година
backup.db bf3de65404 auto update script executed пре 1 година
build.bat 5150128f12 init пре 3 година
build.sh 5150128f12 init пре 3 година
build_linux.bat fb3f708a68 Added new header rewrite structure пре 9 месеци
cert.go dd9990520f Fixed panic on loading certs generated by v2 пре 10 месеци
config.go dd9990520f Fixed panic on loading certs generated by v2 пре 10 месеци
emails.go 51849bfcaa Updated SMTP UI пре 10 месеци
go.mod 80891c2a20 Fixed minor issue in the PR пре 10 месеци
go.sum 80891c2a20 Fixed minor issue in the PR пре 10 месеци
main.go 09012a2451 Restructured TCP proxy into streamproxy module пре 9 месеци
redirect.go e90a89715d Added regex support for redirect пре 11 месеци
reverseproxy.go 818b631d50 Finalized alias implementation пре 11 месеци
router.go 1afe4c1566 auto update script executed пре 1 година
routingrule.go 80891c2a20 Fixed minor issue in the PR пре 10 месеци
sh.exe.stackdump d1962023f9 auto update script executed пре 1 година
start.go 09012a2451 Restructured TCP proxy into streamproxy module пре 9 месеци
start.sh d2fef601a4 Added permission policy module (wip) пре 9 месеци
sys.db_backup d89ec0c136 auto update script executed пре 1 година
sys.uuid 3090893776 auto update script executed пре 1 година
vdir.go add0600258 auto update script executed пре 1 година
webssh.go 3090893776 auto update script executed пре 1 година
wrappers.go 497983a122 auto update script executed пре 1 година

README.md

ReverseProxy

Reverse proxy subservice for ArozOS

Install

Git clone this inside the subservice folder of ArozOS, build it and start it up in ArozOS subservice menu.

You can also use it separately as a really basic reverse proxy server that server website based on domain / virtual directories. You can also add another load balancer in front of multiple reverse proxy server nodes if it is necessary in your case.

Build

Requirement: Go 1.16 or above

cd ~/arozos/subservices
git clone {this_repo}
cd ReverseProxy
./build.sh

To start the module, make sure .disabled file does not exists and start arozos system. You should be able to see a new module named "ReverseProxy" pop up in the start menu.

Usage

Proxy Modes

There are two mode in the ReverseProxy Subservice

  1. vdir mode (Virtual Dirctories)
  2. subd mode (Subdomain Proxying Mode)

Vdir mode proxy web request based on the virtual directories given in the request URL. For example, when configured to redirect /example to example.com, any visits to {your_domain}/example will be proxied to example.com.

Subd mode proxy web request based on sub-domain exists in the request URL. For example, when configured to redirect example.localhost to example.com, any visits that includes example.localhost (e.g. example.localhost/page1) will be proxied to example.com (e.g. example.com/page1)

Root Proxy

Root proxy is the main proxy destination where if all proxy root name did not match, the request will be proxied to this request. If you are working with ArozOS system in default configuration, you can set this to localhost:8080 for any unknown request to be handled by the host ArozOS system