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

Toby Chui 5ced3e5555 AAdded ip blacklist CIDR and wildcard support 10 maanden geleden
build 01669242cf auto update script executed 1 jaar geleden
deprecated 064cd93f5d auto update script executed 1 jaar geleden
docs 06b9d8543e Fixed bug in vdir tailing slash missing redirect logic 10 maanden geleden
log 8ffe463866 auto update script executed 1 jaar geleden
mod 5ced3e5555 AAdded ip blacklist CIDR and wildcard support 10 maanden geleden
res be9cad5b94 auto update script executed 1 jaar geleden
test 2143837509 Added WebSocket Origin check options 1 jaar geleden
tools 0e5836ebf4 auto update script executed 1 jaar geleden
web 51849bfcaa Updated SMTP UI 10 maanden geleden
www 493901b0be Last push before leaving hk 1 jaar geleden
.gitignore 8c28e5dd0a auto update script executed 1 jaar geleden
LICENSE 59fd85fd83 Initial commit 3 jaren geleden
Makefile 10ca798b8f auto update script executed 1 jaar geleden
README.md 800854dfd1 auto update script executed 3 jaren geleden
accesslist.go 1052ece308 Completed hosts base access rules 11 maanden geleden
acme.go 6da71b3bb8 Fixed acme renew cert store not reloaded bug 10 maanden geleden
api.go 818b631d50 Finalized alias implementation 10 maanden geleden
autopush.sh e6d5a2bc90 Added new autopush 1 jaar geleden
backup.db bf3de65404 auto update script executed 1 jaar geleden
build.bat 5150128f12 init 3 jaren geleden
build.sh 5150128f12 init 3 jaren geleden
cert.go 1afe4c1566 auto update script executed 1 jaar geleden
config.go 70400dd3e4 auto update script executed 1 jaar geleden
emails.go 51849bfcaa Updated SMTP UI 10 maanden geleden
go.mod 982e3cf878 Updated version no and check for empty domain 11 maanden geleden
go.sum 982e3cf878 Updated version no and check for empty domain 11 maanden geleden
main.go cad98f2326 Added mdns name support 10 maanden geleden
redirect.go e90a89715d Added regex support for redirect 11 maanden geleden
reverseproxy.go 818b631d50 Finalized alias implementation 10 maanden geleden
router.go 1afe4c1566 auto update script executed 1 jaar geleden
routingrule.go d0852b7f5f auto update script executed 1 jaar geleden
sh.exe.stackdump d1962023f9 auto update script executed 1 jaar geleden
start.go cad98f2326 Added mdns name support 10 maanden geleden
sys.db_backup d89ec0c136 auto update script executed 1 jaar geleden
sys.uuid 3090893776 auto update script executed 1 jaar geleden
vdir.go add0600258 auto update script executed 1 jaar geleden
webssh.go 3090893776 auto update script executed 1 jaar geleden
wrappers.go 497983a122 auto update script executed 1 jaar geleden

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