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

Toby Chui 4241cc4e27 Added header rewrite logic into dpcore 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 4241cc4e27 Added header rewrite logic into dpcore 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 94131a0d36 Added apply button reminder 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 28189fb4af Finalized Stream proxy module 9 ماه پیش
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 4241cc4e27 Added header rewrite logic into dpcore 9 ماه پیش
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