https://github.com/vanng822/sdproxy
Simple dev reverse proxy
https://github.com/vanng822/sdproxy
development golang proxy reverse-proxy
Last synced: 27 days ago
JSON representation
Simple dev reverse proxy
- Host: GitHub
- URL: https://github.com/vanng822/sdproxy
- Owner: vanng822
- License: mit
- Created: 2017-06-20T00:47:06.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2024-05-04T14:34:46.000Z (about 2 years ago)
- Last Synced: 2025-01-18T05:27:34.907Z (over 1 year ago)
- Topics: development, golang, proxy, reverse-proxy
- Language: Go
- Homepage:
- Size: 24.4 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# sdproxy
Simple dev reverse proxy - mimic nginx in dev environment
# Usage
```go
package main
import (
"log"
"github.com/vanng822/sdproxy"
)
func main() {
var hosts []*Host
var locations []*Location
web := sdproxy.NewLocation("/", sdproxy.NewUpstream("127.0.0.1:8090", "127.0.0.1:8091"))
locations = append(locations, web)
api := sdproxy.NewLocation("/api", sdproxy.NewUpstream("127.0.0.1:8092", "127.0.0.1:8093"))
locations = append(locations, api)
hosts = append(hosts, &Host{"", locations})
server := sdproxy.NewServer("127.0.0.1:8181", hosts...)
log.Fatal(server.ListenAndServe())
}
```
OR
```bash
> go install github.com/vanng822/sdproxy/cmd/sdproxy
> sdproxy -c path_to_config.json
```
Configuration example
```json
{
"addr": "127.0.0.1:8080",
"hosts": [{
"hostname": "",
"locations": [{
"path": "/",
"servers": [
"127.0.0.1:8090",
"127.0.0.1:8094"
]
}, {
"path": "/api",
"servers": [
"127.0.0.1:8091",
"127.0.0.1:8092"
]
}]
}]
}
```