diff --git a/api/static-site.ts b/api/static-site.ts index beb274c..41ae6e3 100644 --- a/api/static-site.ts +++ b/api/static-site.ts @@ -267,10 +267,15 @@ const NGINX_CONF = `server { # URL can never legitimately change. A re-crop is a different name, and the HTML that carries it is # revalidated every visit. This is the difference from /derived/ above, which is rewritten in place. # - # `/crops/`, and it was `/images/` until 2026-08-31 — a name taken from the URL rather than from what - # is behind it, beside two other directories equally full of images. A site published before the - # rename has `/images/` in its HTML and no longer has the files; the fix is a publish, which rewrites - # every one of these URLs anyway. + # /crops/, and it was /images/ until 2026-08-31 — a name taken from the URL rather than from what is + # behind it, beside two other directories equally full of images. A site published before the rename + # has /images/ in its HTML and no longer has the files; the fix is a publish, which rewrites every + # one of these URLs anyway. + # + # NO BACKTICKS IN HERE. This whole config is a template literal, so a pair of them around a path ends + # the string and makes the next word an identifier. That shipped once: the plugin failed to mount + # with "crops is not defined", every /fofos-admin call 404'd, and useReady's catch locked all nine + # sections behind "set a root location" — a build error wearing the costume of a setup problem. location ^~ /crops/ { expires 1y; add_header Cache-Control "public, immutable";