Categorygithub.com/GQDeltex/go-http-proxy
modulepackage
0.0.7
Repository: https://github.com/gqdeltex/go-http-proxy.git
Documentation: pkg.go.dev

# README

go-http-proxy

A simple go program to proxy http requests through a server with caching

Usage

All cli options are optional, and have the default values of

secret: 'secret'
cachetime: '30m'
allowedheaders: 'content-type'

To change these defaults, just run the command with options

go-http-server --secret 'supersecret' --cachetime 30m --allowedheaders 'content-type,etag,date'

After running the server you can access the service on port 3000 http://localhost:3000/?url=<the-url-to-proxy&token=<the auth token>&expires=<token expiry time>. The token is a SHA256 Hash of the url + secret + expiry time. So as long as nobody knows your secret key nobody else can access the router.

Installation

Download latest release

go to the releases page and download the latest release

# Untar the files
tar -xfv go-http-proxy-linux-amd64.tar.gz
# And start the executable
./go-http-server

Using go get

go get -v https://github.com/GQDeltex/go-http-proxy.git
~/go/bin/go-http-server

Building yourself

Install requirements

apt install golang git

Clone the repo into your go workspace and get the dependencies

git clone https://github.com/GQDeltex/go-http-proxy.git ~/go/src/github.com/GQDeltex/go-http-proxyk
cd ~/go/src/github.com/GQDeltex/go-http-proxy
go mod download

After that you can either build the binary in that folder or install it into ~/go/bin/go-http-proxy

go build # Executable now in ./go-http-proxy
# Or install
go install # Executable now in ~/go/bin/go-http-proxy

Now you can run the proxy by starting the Executable

./go-http-proxy
# Or if you've used go install
~/go/bin/go-http-proxy

You can even add ~/go/bin to your path to have it even easier

# ~/.bashrc
PATH=$PATH:~/go/bin

Now you can run by typing

go-http-proxy

# Packages

No description provided by the author