dnscms: version image URLs by file hash so media can be cached as immutable
This commit is contained in:
4 files changed
+122
-5
No files matched your search
@@ -59,14 +59,21 @@ not in any repo:
|
||||
|
||||
- `Caddyfile`, `default_redirect_503.caddy`: Coolify's own.
|
||||
- `studentfestivalen-redirects.caddy`: `studentfestivalen.no` and `studioweb.no` → `neuf.no/studio`.
|
||||
- `cms-neuf-no.subdirectives`:
|
||||
- `cms-neuf-no.subdirectives`. The GraphQL API versions image URLs with `?v=<file hash>`
|
||||
(`CustomImage.versioned_url`), so those are cached forever. Anything else under `/media/`
|
||||
(admin previews, renditions, old links) is revalidated on every use, instead of browsers
|
||||
guessing a lifetime from `Last-Modified`. `neuf-no.subdirectives` repeats the same headers:
|
||||
|
||||
```caddy
|
||||
rewrite / /admin/
|
||||
|
||||
handle_path /media/* {
|
||||
root * /site/cms.neuf.no/media
|
||||
file_server
|
||||
root * /site/cms.neuf.no/media
|
||||
@versioned query v=*
|
||||
header @versioned Cache-Control "public, max-age=31536000, immutable"
|
||||
@unversioned not query v=*
|
||||
header @unversioned Cache-Control "no-cache"
|
||||
file_server
|
||||
}
|
||||
```
|
||||
|
||||
@@ -75,8 +82,12 @@ not in any repo:
|
||||
|
||||
```caddy
|
||||
handle_path /media/* {
|
||||
root * /site/cms.neuf.no/media
|
||||
file_server
|
||||
root * /site/cms.neuf.no/media
|
||||
@versioned query v=*
|
||||
header @versioned Cache-Control "public, max-age=31536000, immutable"
|
||||
@unversioned not query v=*
|
||||
header @unversioned Cache-Control "no-cache"
|
||||
file_server
|
||||
}
|
||||
|
||||
@pages not path /_next/static/* /_next/image* /assets/* /media/*
|
||||
|
||||
Reference in new issue
Block a user