appserve is a reverse proxy server in go with automatic https. it routes requests based on domain to specified ports.
$ ./appserve
appserve reads routes from routes.json
.
upon starting, appserve provides an interactive shell with several commands:
-
list
: display all of the domain-port mappings. -
add <domain> <port>
: add a mapping for the domain to the specified port. -
remove <domain>
: remove the mapping for the specified domain. -
save
: save the routes to the current routes.json file. -
load
: load routes from the current routes.json file. -
help
: display the help menu. -
exit
: exit the application.
to add a new route via the interactive shell:
> add example.com 9000
this command routes example.com
to port 9000
. the route is also saved to routes.json
.
to remove an existing route:
> remove example.com
the routes file is a json array of domain-port pairs:
[
{
"domain": "example1.com",
"port": "9000"
},
{
"domain": "example2.com",
"port": "9001"
}
]
to specify a custom routes file location at startup:
$ ./appserve -routes /path/to/your/routes.json
appserve logs information to the system logger (syslog). ensure you have permissions to write to the syslog.
mit license 2023 donuts-are-good, for more info see license.md