traefik/docs/content/middlewares/http/redirectscheme.md

259 lines
5.1 KiB
Markdown
Raw Normal View History

---
title: "Traefik RedirectScheme Documentation"
description: "In Traefik Proxy's HTTP middleware, RedirectScheme redirects clients to different schemes/ports. Read the technical documentation."
---
2019-04-08 15:14:08 +00:00
# RedirectScheme
Redirecting the Client to a Different Scheme/Port
{: .subtitle }
2019-09-10 12:40:05 +00:00
<!--
TODO: add schema
-->
2021-02-11 13:34:04 +00:00
RedirectScheme redirects requests from a scheme/port to another.
## Configuration Examples
2019-04-03 12:32:04 +00:00
```yaml tab="Docker"
# Redirect to https
labels:
2019-09-23 15:00:06 +00:00
- "traefik.http.middlewares.test-redirectscheme.redirectscheme.scheme=https"
2020-02-17 10:04:04 +00:00
- "traefik.http.middlewares.test-redirectscheme.redirectscheme.permanent=true"
2019-04-03 12:32:04 +00:00
```
```yaml tab="Kubernetes"
# Redirect to https
apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: test-redirectscheme
spec:
redirectScheme:
scheme: https
2020-02-17 10:04:04 +00:00
permanent: true
2019-04-03 12:32:04 +00:00
```
2019-10-15 15:34:08 +00:00
```yaml tab="Consul Catalog"
# Redirect to https
labels:
2020-02-17 10:04:04 +00:00
- "traefik.http.middlewares.test-redirectscheme.redirectscheme.scheme=https"
- "traefik.http.middlewares.test-redirectscheme.redirectscheme.permanent=true"
2019-10-15 15:34:08 +00:00
```
```json tab="Marathon"
"labels": {
"traefik.http.middlewares.test-redirectscheme.redirectscheme.scheme": "https"
2020-02-17 10:04:04 +00:00
"traefik.http.middlewares.test-redirectscheme.redirectscheme.permanent": "true"
}
```
2019-04-08 15:14:08 +00:00
```yaml tab="Rancher"
# Redirect to https
labels:
2019-09-23 15:00:06 +00:00
- "traefik.http.middlewares.test-redirectscheme.redirectscheme.scheme=https"
2020-02-17 10:04:04 +00:00
- "traefik.http.middlewares.test-redirectscheme.redirectscheme.permanent=true"
2019-04-08 15:14:08 +00:00
```
2019-07-22 07:58:04 +00:00
```yaml tab="File (YAML)"
# Redirect to https
http:
middlewares:
test-redirectscheme:
redirectScheme:
scheme: https
2020-02-17 10:04:04 +00:00
permanent: true
2019-07-22 07:58:04 +00:00
```
```toml tab="File (TOML)"
# Redirect to https
[http.middlewares]
[http.middlewares.test-redirectscheme.redirectScheme]
scheme = "https"
permanent = true
```
## Configuration Options
2019-04-03 12:32:04 +00:00
### `permanent`
Set the `permanent` option to `true` to apply a permanent redirection.
2020-02-17 10:04:04 +00:00
```yaml tab="Docker"
# Redirect to https
labels:
# ...
- "traefik.http.middlewares.test-redirectscheme.redirectscheme.permanent=true"
```
```yaml tab="Kubernetes"
# Redirect to https
apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: test-redirectscheme
spec:
redirectScheme:
# ...
permanent: true
```
```yaml tab="Consul Catalog"
# Redirect to https
labels:
# ...
- "traefik.http.middlewares.test-redirectscheme.redirectscheme.permanent=true"
```
```json tab="Marathon"
"labels": {
"traefik.http.middlewares.test-redirectscheme.redirectscheme.permanent": "true"
}
```
```yaml tab="Rancher"
# Redirect to https
labels:
# ...
- "traefik.http.middlewares.test-redirectscheme.redirectscheme.permanent=true"
```
```yaml tab="File (YAML)"
# Redirect to https
http:
middlewares:
test-redirectscheme:
redirectScheme:
# ...
permanent: true
```
```toml tab="File (TOML)"
# Redirect to https
[http.middlewares]
[http.middlewares.test-redirectscheme.redirectScheme]
# ...
permanent = true
```
2019-04-03 12:32:04 +00:00
### `scheme`
2021-02-11 13:34:04 +00:00
The `scheme` option defines the scheme of the new URL.
2020-02-17 10:04:04 +00:00
```yaml tab="Docker"
# Redirect to https
labels:
- "traefik.http.middlewares.test-redirectscheme.redirectscheme.scheme=https"
```
```yaml tab="Kubernetes"
# Redirect to https
apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: test-redirectscheme
spec:
redirectScheme:
scheme: https
```
```yaml tab="Consul Catalog"
# Redirect to https
labels:
- "traefik.http.middlewares.test-redirectscheme.redirectscheme.scheme=https"
```
```json tab="Marathon"
"labels": {
"traefik.http.middlewares.test-redirectscheme.redirectscheme.scheme": "https"
}
```
```yaml tab="Rancher"
# Redirect to https
labels:
- "traefik.http.middlewares.test-redirectscheme.redirectscheme.scheme=https"
```
```yaml tab="File (YAML)"
# Redirect to https
http:
middlewares:
test-redirectscheme:
redirectScheme:
scheme: https
```
```toml tab="File (TOML)"
# Redirect to https
[http.middlewares]
[http.middlewares.test-redirectscheme.redirectScheme]
scheme = "https"
```
2019-04-03 12:32:04 +00:00
### `port`
2021-02-11 13:34:04 +00:00
The `port` option defines the port of the new URL.
2020-02-17 10:04:04 +00:00
```yaml tab="Docker"
# Redirect to https
labels:
# ...
- "traefik.http.middlewares.test-redirectscheme.redirectscheme.port=443"
```
```yaml tab="Kubernetes"
# Redirect to https
apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: test-redirectscheme
spec:
redirectScheme:
# ...
2020-05-14 15:30:06 +00:00
port: "443"
2020-02-17 10:04:04 +00:00
```
```yaml tab="Consul Catalog"
# Redirect to https
labels:
# ...
- "traefik.http.middlewares.test-redirectscheme.redirectscheme.port=443"
```
```json tab="Marathon"
"labels": {
"traefik.http.middlewares.test-redirectscheme.redirectscheme.port": "443"
}
```
```yaml tab="Rancher"
# Redirect to https
labels:
# ...
- "traefik.http.middlewares.test-redirectscheme.redirectscheme.port=443"
```
```yaml tab="File (YAML)"
# Redirect to https
http:
middlewares:
test-redirectscheme:
redirectScheme:
# ...
2020-05-14 15:30:06 +00:00
port: "443"
2020-02-17 10:04:04 +00:00
```
2020-05-14 15:30:06 +00:00
```toml tab="File (TOML)"
# Redirect to https
[http.middlewares]
[http.middlewares.test-redirectscheme.redirectScheme]
# ...
port = 443
```
2020-05-14 15:30:06 +00:00
!!! info "Port in this configuration is a string, not a numeric value."