No Description

Mohamed Al Ashaal b34fda3104 used net/url insteadof testutils and created the Dockerfile 7 years ago
Dockerfile cf68a172f3 used net/url insteadof testutils and created the Dockerfile 7 years ago
LICENSE 03ed497e66 Add an MIT LICENSE file 8 years ago
README.md cf68a172f3 used net/url insteadof testutils and created the Dockerfile 7 years ago
colorize.go 1abed6b2bc initializing the new version 7 years ago
flags.go 32bd6eb64c initializing the new version 7 years ago
hosts.go 32bd6eb64c initializing the new version 7 years ago
main.go 32bd6eb64c initializing the new version 7 years ago
server.go cf68a172f3 used net/url insteadof testutils and created the Dockerfile 7 years ago

README.md

HTTPSify v3

A Let'sEncrypt based reverse proxy, that will automatically generate & renew valid ssl certs for your domains, it also enables the http/2 protocol by default, and uses roundrobin as an algorithm to loadbalance the incoming requests between multiple upstreams

Install

# Using Docker

Just run the following and then have fun !!

$ docker run -v $HOME:/root/ -p 443:443 alash3al/httpsify

# Building from source

You must have the Go environment installed

$ go get -u github.com/alash3al/httpsify

Configurations

Goto your $HOME Directory and edit the hosts.json to something like this

{
	"example1.com": ["http://localhost"],
	"example2.com": ["http://localhost:8080", "http://localhost:8081"]
}

As you see, the configuration file accepts a JSON object/hashmap of domain -> upstreams, and yes, it can loadbalance the requests between multiple upstreams using roundrobin algorithm.

Also You don't need to restart the server to reload the configurations, because httpsify automatically watches the configurations file and reload it on any change.