Simple cache plugin middleware caches responses on disk.
To configure this plugin you should add its configuration to the Traefik dynamic configuration as explained here. The following snippet shows how to configure this plugin with the File provider in TOML and YAML:
Static:
[experimental.plugins.cache]
modulename = "github.com/iamolegga/plugin-simplecache"
version = "v0.4.0"
experimental:
plugins:
cache:
moduleName: "github.com/iamolegga/plugin-simplecache"
version: "v0.3.0"
Dynamic:
[http.middlewares]
[http.middlewares.my-cache.plugin.cache]
path = "/some/path/to/cache/dir"
http:
middlewares:
my-cache:
plugin:
cache:
path: /some/path/to/cache/dir
The base path that files will be created under. This must be a valid filesystem path. If the path does not exist, it will be created.
Default: 300
The maximum number of seconds a response can be cached for. The actual cache time will always be lower or equal to this.
Default: 600
The number of seconds to wait between cache cleanup runs.
Default: true
This determines if the cache status header Cache-Status
will be added to the
response headers. This header can have the value hit
, miss
or error
.
Default: false
This determines if responses without special cache-related headers should be
cached. If this is set to true
, responses without special headers will be
cached for the maxExpiry
cache time. If this is set to false
, responses
without special cache-related headers will not be cached (as in the
original plugin). Works only
if cachecontrol unable to find any
reason not to cache the response (due to headers, method, status code, etc.).
Default: false
This determines if a request URL's query parameters are used in the cache key. If
this is set to false
, the cached response for one request will be returned for
subequent requests that differ only by their URL query parameters. If this is set
to true
, requests with different query parameters will have different cached
responses stored.