Co-authored-by: Ludovic Fernandez <ldez@users.noreply.github.com> Co-authored-by: Julien Salleyron <julien.salleyron@gmail.com>
479 lines
16 KiB
TOML
479 lines
16 KiB
TOML
[http]
|
|
[http.routers]
|
|
[http.routers.Router0]
|
|
entryPoints = ["foobar", "foobar"]
|
|
middlewares = ["foobar", "foobar"]
|
|
service = "foobar"
|
|
rule = "foobar"
|
|
priority = 42
|
|
[http.routers.Router0.tls]
|
|
options = "foobar"
|
|
certResolver = "foobar"
|
|
|
|
[[http.routers.Router0.tls.domains]]
|
|
main = "foobar"
|
|
sans = ["foobar", "foobar"]
|
|
|
|
[[http.routers.Router0.tls.domains]]
|
|
main = "foobar"
|
|
sans = ["foobar", "foobar"]
|
|
[http.routers.Router1]
|
|
entryPoints = ["foobar", "foobar"]
|
|
middlewares = ["foobar", "foobar"]
|
|
service = "foobar"
|
|
rule = "foobar"
|
|
priority = 42
|
|
[http.routers.Router1.tls]
|
|
options = "foobar"
|
|
certResolver = "foobar"
|
|
|
|
[[http.routers.Router1.tls.domains]]
|
|
main = "foobar"
|
|
sans = ["foobar", "foobar"]
|
|
|
|
[[http.routers.Router1.tls.domains]]
|
|
main = "foobar"
|
|
sans = ["foobar", "foobar"]
|
|
[http.services]
|
|
[http.services.Service01]
|
|
[http.services.Service01.loadBalancer]
|
|
passHostHeader = true
|
|
serversTransport = "foobar"
|
|
[http.services.Service01.loadBalancer.sticky]
|
|
[http.services.Service01.loadBalancer.sticky.cookie]
|
|
name = "foobar"
|
|
secure = true
|
|
httpOnly = true
|
|
sameSite = "foobar"
|
|
|
|
[[http.services.Service01.loadBalancer.servers]]
|
|
url = "foobar"
|
|
|
|
[[http.services.Service01.loadBalancer.servers]]
|
|
url = "foobar"
|
|
[http.services.Service01.loadBalancer.healthCheck]
|
|
scheme = "foobar"
|
|
path = "foobar"
|
|
method = "foobar"
|
|
port = 42
|
|
interval = "foobar"
|
|
timeout = "foobar"
|
|
hostname = "foobar"
|
|
followRedirects = true
|
|
[http.services.Service01.loadBalancer.healthCheck.headers]
|
|
name0 = "foobar"
|
|
name1 = "foobar"
|
|
[http.services.Service01.loadBalancer.responseForwarding]
|
|
flushInterval = "foobar"
|
|
[http.services.Service02]
|
|
[http.services.Service02.mirroring]
|
|
service = "foobar"
|
|
maxBodySize = 42
|
|
|
|
[http.services.Service02.mirroring.healthCheck]
|
|
|
|
[[http.services.Service02.mirroring.mirrors]]
|
|
name = "foobar"
|
|
percent = 42
|
|
|
|
[[http.services.Service02.mirroring.mirrors]]
|
|
name = "foobar"
|
|
percent = 42
|
|
[http.services.Service03]
|
|
[http.services.Service03.weighted]
|
|
[http.services.Service03.weighted.healthCheck]
|
|
|
|
[[http.services.Service03.weighted.services]]
|
|
name = "foobar"
|
|
weight = 42
|
|
|
|
[[http.services.Service03.weighted.services]]
|
|
name = "foobar"
|
|
weight = 42
|
|
[http.services.Service03.weighted.sticky]
|
|
[http.services.Service03.weighted.sticky.cookie]
|
|
name = "foobar"
|
|
secure = true
|
|
httpOnly = true
|
|
sameSite = "foobar"
|
|
[http.services.Service04]
|
|
[http.services.Service04.failover]
|
|
service = "foobar"
|
|
fallback = "foobar"
|
|
|
|
[http.services.Service04.failover.healthCheck]
|
|
[http.middlewares]
|
|
[http.middlewares.Middleware00]
|
|
[http.middlewares.Middleware00.addPrefix]
|
|
prefix = "foobar"
|
|
[http.middlewares.Middleware01]
|
|
[http.middlewares.Middleware01.basicAuth]
|
|
users = ["foobar", "foobar"]
|
|
usersFile = "foobar"
|
|
realm = "foobar"
|
|
removeHeader = true
|
|
headerField = "foobar"
|
|
[http.middlewares.Middleware02]
|
|
[http.middlewares.Middleware02.buffering]
|
|
maxRequestBodyBytes = 42
|
|
memRequestBodyBytes = 42
|
|
maxResponseBodyBytes = 42
|
|
memResponseBodyBytes = 42
|
|
retryExpression = "foobar"
|
|
[http.middlewares.Middleware03]
|
|
[http.middlewares.Middleware03.chain]
|
|
middlewares = ["foobar", "foobar"]
|
|
[http.middlewares.Middleware04]
|
|
[http.middlewares.Middleware04.circuitBreaker]
|
|
expression = "foobar"
|
|
checkPeriod = "42s"
|
|
fallbackDuration = "42s"
|
|
recoveryDuration = "42s"
|
|
[http.middlewares.Middleware05]
|
|
[http.middlewares.Middleware05.compress]
|
|
excludedContentTypes = ["foobar", "foobar"]
|
|
minResponseBodyBytes = 42
|
|
[http.middlewares.Middleware06]
|
|
[http.middlewares.Middleware06.contentType]
|
|
autoDetect = true
|
|
[http.middlewares.Middleware07]
|
|
[http.middlewares.Middleware07.digestAuth]
|
|
users = ["foobar", "foobar"]
|
|
usersFile = "foobar"
|
|
removeHeader = true
|
|
realm = "foobar"
|
|
headerField = "foobar"
|
|
[http.middlewares.Middleware08]
|
|
[http.middlewares.Middleware08.errors]
|
|
status = ["foobar", "foobar"]
|
|
service = "foobar"
|
|
query = "foobar"
|
|
[http.middlewares.Middleware09]
|
|
[http.middlewares.Middleware09.forwardAuth]
|
|
address = "foobar"
|
|
trustForwardHeader = true
|
|
authResponseHeaders = ["foobar", "foobar"]
|
|
authResponseHeadersRegex = "foobar"
|
|
authRequestHeaders = ["foobar", "foobar"]
|
|
[http.middlewares.Middleware09.forwardAuth.tls]
|
|
ca = "foobar"
|
|
caOptional = true
|
|
cert = "foobar"
|
|
key = "foobar"
|
|
insecureSkipVerify = true
|
|
[http.middlewares.Middleware10]
|
|
[http.middlewares.Middleware10.headers]
|
|
accessControlAllowCredentials = true
|
|
accessControlAllowHeaders = ["foobar", "foobar"]
|
|
accessControlAllowMethods = ["foobar", "foobar"]
|
|
accessControlAllowOriginList = ["foobar", "foobar"]
|
|
accessControlAllowOriginListRegex = ["foobar", "foobar"]
|
|
accessControlExposeHeaders = ["foobar", "foobar"]
|
|
accessControlMaxAge = 42
|
|
addVaryHeader = true
|
|
allowedHosts = ["foobar", "foobar"]
|
|
hostsProxyHeaders = ["foobar", "foobar"]
|
|
sslRedirect = true
|
|
sslTemporaryRedirect = true
|
|
sslHost = "foobar"
|
|
sslForceHost = true
|
|
stsSeconds = 42
|
|
stsIncludeSubdomains = true
|
|
stsPreload = true
|
|
forceSTSHeader = true
|
|
frameDeny = true
|
|
customFrameOptionsValue = "foobar"
|
|
contentTypeNosniff = true
|
|
browserXssFilter = true
|
|
customBrowserXSSValue = "foobar"
|
|
contentSecurityPolicy = "foobar"
|
|
publicKey = "foobar"
|
|
referrerPolicy = "foobar"
|
|
featurePolicy = "foobar"
|
|
permissionsPolicy = "foobar"
|
|
isDevelopment = true
|
|
[http.middlewares.Middleware10.headers.customRequestHeaders]
|
|
name0 = "foobar"
|
|
name1 = "foobar"
|
|
[http.middlewares.Middleware10.headers.customResponseHeaders]
|
|
name0 = "foobar"
|
|
name1 = "foobar"
|
|
[http.middlewares.Middleware10.headers.sslProxyHeaders]
|
|
name0 = "foobar"
|
|
name1 = "foobar"
|
|
[http.middlewares.Middleware11]
|
|
[http.middlewares.Middleware11.ipWhiteList]
|
|
sourceRange = ["foobar", "foobar"]
|
|
[http.middlewares.Middleware11.ipWhiteList.ipStrategy]
|
|
depth = 42
|
|
excludedIPs = ["foobar", "foobar"]
|
|
[http.middlewares.Middleware12]
|
|
[http.middlewares.Middleware12.inFlightReq]
|
|
amount = 42
|
|
[http.middlewares.Middleware12.inFlightReq.sourceCriterion]
|
|
requestHeaderName = "foobar"
|
|
requestHost = true
|
|
[http.middlewares.Middleware12.inFlightReq.sourceCriterion.ipStrategy]
|
|
depth = 42
|
|
excludedIPs = ["foobar", "foobar"]
|
|
[http.middlewares.Middleware13]
|
|
[http.middlewares.Middleware13.passTLSClientCert]
|
|
pem = true
|
|
[http.middlewares.Middleware13.passTLSClientCert.info]
|
|
notAfter = true
|
|
notBefore = true
|
|
sans = true
|
|
serialNumber = true
|
|
[http.middlewares.Middleware13.passTLSClientCert.info.subject]
|
|
country = true
|
|
province = true
|
|
locality = true
|
|
organization = true
|
|
organizationalUnit = true
|
|
commonName = true
|
|
serialNumber = true
|
|
domainComponent = true
|
|
[http.middlewares.Middleware13.passTLSClientCert.info.issuer]
|
|
country = true
|
|
province = true
|
|
locality = true
|
|
organization = true
|
|
commonName = true
|
|
serialNumber = true
|
|
domainComponent = true
|
|
[http.middlewares.Middleware14]
|
|
[http.middlewares.Middleware14.plugin]
|
|
[http.middlewares.Middleware14.plugin.PluginConf]
|
|
foo = "bar"
|
|
[http.middlewares.Middleware15]
|
|
[http.middlewares.Middleware15.rateLimit]
|
|
average = 42
|
|
period = "42s"
|
|
burst = 42
|
|
[http.middlewares.Middleware15.rateLimit.sourceCriterion]
|
|
requestHeaderName = "foobar"
|
|
requestHost = true
|
|
[http.middlewares.Middleware15.rateLimit.sourceCriterion.ipStrategy]
|
|
depth = 42
|
|
excludedIPs = ["foobar", "foobar"]
|
|
[http.middlewares.Middleware16]
|
|
[http.middlewares.Middleware16.redirectRegex]
|
|
regex = "foobar"
|
|
replacement = "foobar"
|
|
permanent = true
|
|
[http.middlewares.Middleware17]
|
|
[http.middlewares.Middleware17.redirectScheme]
|
|
scheme = "foobar"
|
|
port = "foobar"
|
|
permanent = true
|
|
[http.middlewares.Middleware18]
|
|
[http.middlewares.Middleware18.replacePath]
|
|
path = "foobar"
|
|
[http.middlewares.Middleware19]
|
|
[http.middlewares.Middleware19.replacePathRegex]
|
|
regex = "foobar"
|
|
replacement = "foobar"
|
|
[http.middlewares.Middleware20]
|
|
[http.middlewares.Middleware20.retry]
|
|
attempts = 42
|
|
initialInterval = "42s"
|
|
[http.middlewares.Middleware21]
|
|
[http.middlewares.Middleware21.stripPrefix]
|
|
prefixes = ["foobar", "foobar"]
|
|
forceSlash = true
|
|
[http.middlewares.Middleware22]
|
|
[http.middlewares.Middleware22.stripPrefixRegex]
|
|
regex = ["foobar", "foobar"]
|
|
[http.serversTransports]
|
|
[http.serversTransports.ServersTransport0]
|
|
serverName = "foobar"
|
|
insecureSkipVerify = true
|
|
rootCAs = ["foobar", "foobar"]
|
|
maxIdleConnsPerHost = 42
|
|
disableHTTP2 = true
|
|
peerCertURI = "foobar"
|
|
|
|
[[http.serversTransports.ServersTransport0.certificates]]
|
|
certFile = "foobar"
|
|
keyFile = "foobar"
|
|
|
|
[[http.serversTransports.ServersTransport0.certificates]]
|
|
certFile = "foobar"
|
|
keyFile = "foobar"
|
|
[http.serversTransports.ServersTransport0.forwardingTimeouts]
|
|
dialTimeout = "42s"
|
|
responseHeaderTimeout = "42s"
|
|
idleConnTimeout = "42s"
|
|
readIdleTimeout = "42s"
|
|
pingTimeout = "42s"
|
|
[http.serversTransports.ServersTransport1]
|
|
serverName = "foobar"
|
|
insecureSkipVerify = true
|
|
rootCAs = ["foobar", "foobar"]
|
|
maxIdleConnsPerHost = 42
|
|
disableHTTP2 = true
|
|
peerCertURI = "foobar"
|
|
|
|
[[http.serversTransports.ServersTransport1.certificates]]
|
|
certFile = "foobar"
|
|
keyFile = "foobar"
|
|
|
|
[[http.serversTransports.ServersTransport1.certificates]]
|
|
certFile = "foobar"
|
|
keyFile = "foobar"
|
|
[http.serversTransports.ServersTransport1.forwardingTimeouts]
|
|
dialTimeout = "42s"
|
|
responseHeaderTimeout = "42s"
|
|
idleConnTimeout = "42s"
|
|
readIdleTimeout = "42s"
|
|
pingTimeout = "42s"
|
|
|
|
[tcp]
|
|
[tcp.routers]
|
|
[tcp.routers.TCPRouter0]
|
|
entryPoints = ["foobar", "foobar"]
|
|
middlewares = ["foobar", "foobar"]
|
|
service = "foobar"
|
|
rule = "foobar"
|
|
priority = 42
|
|
[tcp.routers.TCPRouter0.tls]
|
|
passthrough = true
|
|
options = "foobar"
|
|
certResolver = "foobar"
|
|
|
|
[[tcp.routers.TCPRouter0.tls.domains]]
|
|
main = "foobar"
|
|
sans = ["foobar", "foobar"]
|
|
|
|
[[tcp.routers.TCPRouter0.tls.domains]]
|
|
main = "foobar"
|
|
sans = ["foobar", "foobar"]
|
|
[tcp.routers.TCPRouter1]
|
|
entryPoints = ["foobar", "foobar"]
|
|
middlewares = ["foobar", "foobar"]
|
|
service = "foobar"
|
|
rule = "foobar"
|
|
priority = 42
|
|
[tcp.routers.TCPRouter1.tls]
|
|
passthrough = true
|
|
options = "foobar"
|
|
certResolver = "foobar"
|
|
|
|
[[tcp.routers.TCPRouter1.tls.domains]]
|
|
main = "foobar"
|
|
sans = ["foobar", "foobar"]
|
|
|
|
[[tcp.routers.TCPRouter1.tls.domains]]
|
|
main = "foobar"
|
|
sans = ["foobar", "foobar"]
|
|
[tcp.services]
|
|
[tcp.services.TCPService01]
|
|
[tcp.services.TCPService01.loadBalancer]
|
|
terminationDelay = 42
|
|
[tcp.services.TCPService01.loadBalancer.proxyProtocol]
|
|
version = 42
|
|
|
|
[[tcp.services.TCPService01.loadBalancer.servers]]
|
|
address = "foobar"
|
|
|
|
[[tcp.services.TCPService01.loadBalancer.servers]]
|
|
address = "foobar"
|
|
[tcp.services.TCPService02]
|
|
[tcp.services.TCPService02.weighted]
|
|
|
|
[[tcp.services.TCPService02.weighted.services]]
|
|
name = "foobar"
|
|
weight = 42
|
|
|
|
[[tcp.services.TCPService02.weighted.services]]
|
|
name = "foobar"
|
|
weight = 42
|
|
[tcp.middlewares]
|
|
[tcp.middlewares.TCPMiddleware00]
|
|
[tcp.middlewares.TCPMiddleware00.ipWhiteList]
|
|
sourceRange = ["foobar", "foobar"]
|
|
[tcp.middlewares.TCPMiddleware01]
|
|
[tcp.middlewares.TCPMiddleware01.inFlightConn]
|
|
amount = 42
|
|
|
|
[udp]
|
|
[udp.routers]
|
|
[udp.routers.UDPRouter0]
|
|
entryPoints = ["foobar", "foobar"]
|
|
service = "foobar"
|
|
[udp.routers.UDPRouter1]
|
|
entryPoints = ["foobar", "foobar"]
|
|
service = "foobar"
|
|
[udp.services]
|
|
[udp.services.UDPService01]
|
|
[udp.services.UDPService01.loadBalancer]
|
|
|
|
[[udp.services.UDPService01.loadBalancer.servers]]
|
|
address = "foobar"
|
|
|
|
[[udp.services.UDPService01.loadBalancer.servers]]
|
|
address = "foobar"
|
|
[udp.services.UDPService02]
|
|
[udp.services.UDPService02.weighted]
|
|
|
|
[[udp.services.UDPService02.weighted.services]]
|
|
name = "foobar"
|
|
weight = 42
|
|
|
|
[[udp.services.UDPService02.weighted.services]]
|
|
name = "foobar"
|
|
weight = 42
|
|
|
|
[tls]
|
|
|
|
[[tls.certificates]]
|
|
certFile = "foobar"
|
|
keyFile = "foobar"
|
|
stores = ["foobar", "foobar"]
|
|
|
|
[[tls.certificates]]
|
|
certFile = "foobar"
|
|
keyFile = "foobar"
|
|
stores = ["foobar", "foobar"]
|
|
[tls.options]
|
|
[tls.options.Options0]
|
|
minVersion = "foobar"
|
|
maxVersion = "foobar"
|
|
cipherSuites = ["foobar", "foobar"]
|
|
curvePreferences = ["foobar", "foobar"]
|
|
sniStrict = true
|
|
preferServerCipherSuites = true
|
|
alpnProtocols = ["foobar", "foobar"]
|
|
[tls.options.Options0.clientAuth]
|
|
caFiles = ["foobar", "foobar"]
|
|
clientAuthType = "foobar"
|
|
[tls.options.Options1]
|
|
minVersion = "foobar"
|
|
maxVersion = "foobar"
|
|
cipherSuites = ["foobar", "foobar"]
|
|
curvePreferences = ["foobar", "foobar"]
|
|
sniStrict = true
|
|
preferServerCipherSuites = true
|
|
alpnProtocols = ["foobar", "foobar"]
|
|
[tls.options.Options1.clientAuth]
|
|
caFiles = ["foobar", "foobar"]
|
|
clientAuthType = "foobar"
|
|
[tls.stores]
|
|
[tls.stores.Store0]
|
|
[tls.stores.Store0.defaultCertificate]
|
|
certFile = "foobar"
|
|
keyFile = "foobar"
|
|
[tls.stores.Store0.defaultGeneratedCert]
|
|
resolver = "foobar"
|
|
[tls.stores.Store0.defaultGeneratedCert.domain]
|
|
main = "foobar"
|
|
sans = ["foobar", "foobar"]
|
|
[tls.stores.Store1]
|
|
[tls.stores.Store1.defaultCertificate]
|
|
certFile = "foobar"
|
|
keyFile = "foobar"
|
|
[tls.stores.Store1.defaultGeneratedCert]
|
|
resolver = "foobar"
|
|
[tls.stores.Store1.defaultGeneratedCert.domain]
|
|
main = "foobar"
|
|
sans = ["foobar", "foobar"]
|