

Here’s the basic set of response headers showing the server is sending the proper cache-control directives on the image. The problem appears to be on the Firefox side using them properly.
$ curl -I https://discuss.tchncs.de/pictrs/image/7285a9e0-5492-4461-8188-6778d7d594c7.jpeg
HTTP/2 200
server: openresty
date: Tue, 02 Dec 2025 12:51:29 GMT
content-type: image/jpeg
access-control-expose-headers: content-type, accept-ranges, transfer-encoding, date, cache-control, last-modified
vary: Origin, Access-Control-Request-Method, Access-Control-Request-Headers
cache-control: max-age=31536000
last-modified: Mon, 30 Jun 2025 11:02:52 GMT
expires: Wed, 02 Dec 2026 12:51:29 GMT
cache-control: public
access-control-allow-origin: *
x-cache-status: HIT




Firefox webdev console request headers (minus my personal cookie), where I’m already on the page and just click the refresh button. No
if-modified-sincesent to the server to trigger a proper 304 response:GET /pictrs/image/7285a9e0-5492-4461-8188-6778d7d594c7.jpeg?format=webp HTTP/2 Host: discuss.tchncs.de User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:145.0) Gecko/20100101 Firefox/145.0 Accept: image/avif,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5 Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate, br, zstd Referer: https://discuss.tchncs.de/ Sec-Fetch-Dest: image Sec-Fetch-Mode: no-cors Sec-Fetch-Site: same-origin Connection: keep-alive DNT: 1 Sec-GPC: 1 Priority: u=5, i TE: trailers