Fix cache headers: immutable for hashed assets, revalidate for HTML
The blanket max-age=3600 caused stale HTML pages after redeployment. Now _astro/* gets immutable (content-addressed filenames) and HTML pages get no-cache (always revalidate, 304 when unchanged).
This commit is contained in:
parent
83493afdc7
commit
04a17899fc
@ -2,6 +2,14 @@
|
|||||||
root * /srv
|
root * /srv
|
||||||
file_server
|
file_server
|
||||||
encode gzip zstd
|
encode gzip zstd
|
||||||
header Cache-Control "public, max-age=3600"
|
|
||||||
|
# Hashed assets: cache forever (filename changes on content change)
|
||||||
|
@hashed path /_astro/*
|
||||||
|
header @hashed Cache-Control "public, max-age=31536000, immutable"
|
||||||
|
|
||||||
|
# Everything else (HTML pages): always revalidate
|
||||||
|
@unhashed not path /_astro/*
|
||||||
|
header @unhashed Cache-Control "no-cache"
|
||||||
|
|
||||||
try_files {path} {path}/ /404.html
|
try_files {path} {path}/ /404.html
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user