https://github.com/andersnormal/outlaw
:cow: A redirector with automatic certs and redirect wildcards and specific routes
https://github.com/andersnormal/outlaw
go http redirects
Last synced: 3 months ago
JSON representation
:cow: A redirector with automatic certs and redirect wildcards and specific routes
- Host: GitHub
- URL: https://github.com/andersnormal/outlaw
- Owner: andersnormal
- License: apache-2.0
- Archived: true
- Created: 2018-11-15T16:51:21.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2019-07-13T12:11:30.000Z (over 6 years ago)
- Last Synced: 2024-06-20T19:20:40.523Z (almost 2 years ago)
- Topics: go, http, redirects
- Language: Go
- Homepage:
- Size: 5.11 MB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# :cow: Outlaw
Outlaw is a redirector that uses [autocert](https://godoc.org/golang.org/x/crypto/acme/autocert) to generate SSL certificates automatically and redirect wildcards and specific routes.
Features
* Redirect parked Domains to a URL
* Redirect HTTP to HTTPS when you run behind a CDN (different origins)
* Redirect multiple domains to a canonical domain
* Create special redirects schemes (e.g. for iOS apps)
Databases
* [MongoDB](https://www.mongodb.com)
* DynamoDB (coming soon)
* more coming soon...
## Client
Outlaw includes a [gRPC](https://grpc.io) client to control the server.
## Setup
Outlaw needs to setup the various backends to work with it. In the case of MongoDB it needs to create the needed collections.
```
# Example
docker run andersnormal/outlaw:1.0.0-beta.0 bootstrap --mongo --mongo-username root --mongo-password example --mongo-auth-database admin --verbose
```
You can also use the `--bootstrap` option to do the bootstrap upon the start of Outlaw.
## Docker
```
docker run andersnormal/outlaw:1.0.0-beta.0 --mongo --mongo-endpoint mongo --mongo-username root --mongo-password example --mongo-auth-database admin --verbose
```
## Help
Outlaw provides help for all commands and subcommands and its various options. It should be easy to configure Outlaw for your specific setup.
```
# Example
docker run andersnormal/outlaw:1.0.0-beta.0 --help
```
## Staging
Before moving to production it is recommended to test in the [Staging Environment](https://acme-staging.api.letsencrypt.org/directory) of [Let's Encrypt](https://letsencrypt.org). The URL for the Staging ACME V1 Environment can be set via `--acme-url https://letsencrypt.org`.
## Development
[Boulder](https://github.com/letsencrypt/boulder) is supported to test in a local development environment.
```
./bin/outlaw --dynamodb --http-port 5002 --https-port 5001 --acme-url http://localhost:4000/directory --verbose
```
## License
[Apache 2.0](/LICENSE)