https://github.com/mrdrelar/traefik-plugin-rewriteheader
Plugin Rewrite Header for Traefik 2
https://github.com/mrdrelar/traefik-plugin-rewriteheader
traefik-plugin
Last synced: 6 months ago
JSON representation
Plugin Rewrite Header for Traefik 2
- Host: GitHub
- URL: https://github.com/mrdrelar/traefik-plugin-rewriteheader
- Owner: mrdrelar
- Created: 2020-10-19T11:07:03.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2020-10-19T11:47:38.000Z (over 5 years ago)
- Last Synced: 2024-06-20T12:45:18.003Z (about 2 years ago)
- Topics: traefik-plugin
- Language: Go
- Homepage:
- Size: 1.95 KB
- Stars: 7
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Rewrite Header
Rewrite header is a middleware plugin for [Traefik](https://traefik.io) which extracts data via regexp from the target header and creates a new with extracted content.
## Configuration
### Static
```toml
[pilot]
token = "xxxx"
[experimental.plugins.rewritebody]
modulename = "github.com/mrdrelar/traefik-plugin-rewriteheader"
version = "v0.0.1"
```
### Dynamic
To configure the Rewrite Head plugin you should create a [middleware](https://docs.traefik.io/middlewares/overview/) in your dynamic configuration as explained [here](https://docs.traefik.io/middlewares/overview/). The following example creates and uses the rewritehead middleware plugin to create a new header with extracted data foo from the HTTP request head.
```
[http]
[http.routers]
[http.routers.my-router]
rule = "Host(`localhost`)"
service = "my-service"
middlewares = ["rewriteheader"]
[http.services]
[http.services.my-service.loadBalancer]
[[http.services.my-service.loadBalancer.servers]]
url = "http://127.0.0.1"
[http.middlewares]
[http.middlewares.rewriteheader.plugin.dev]
fromhead = "X-TargetHeader" //required
regex = "foo.?" //required
create = "X-NewHeader" //required
prefix = "CN=" //optional
```