43 lines
959 B
Markdown
Executable File
43 lines
959 B
Markdown
Executable File
# Flowgate
|
|
HTTP requests redirection system
|
|
|
|
Features:
|
|
- Request redirection
|
|
- TLS support (via Rustls!)
|
|
- Keep-alive connections
|
|
- Sending IP in header (X-Real-IP)
|
|
- Multiple ip forwarding methods
|
|
- Accepts incoming ip forwarding
|
|
|
|
TODO:
|
|
- Filter by headers
|
|
- Modify response headers
|
|
- HTTP/3 full support (quic/udp)
|
|
|
|
## How to use
|
|
|
|
Firstly, download it from releases. or build from sources (read BUILD.md) \
|
|
Just run it and configure in `conf.yml` file.
|
|
|
|
### Logging
|
|
|
|
To get all logs (with debug ones), set this env var:
|
|
|
|
```
|
|
RUST_LOG=debug
|
|
```
|
|
|
|
Read more: [env_logger](https://docs.rs/env_logger/latest/env_logger/#enabling-logging)
|
|
|
|
## Configuration
|
|
|
|
### IP forwarding methods
|
|
|
|
- None (`none`):\
|
|
Do nothing
|
|
- Modern (`modern`):\
|
|
Appends encoded to bytes ip to the beginning of the request
|
|
- Simple (`simple`):\
|
|
Appends `ip:port\n` to the beginning of the request
|
|
- Header (`header[:HEADER_NAME]`):\
|
|
Adds header `HEADER_NAME: ip:port` to the request |