gnezim f56bb97e68
ci-deploy / build-deploy-test (push) Failing after 1m11s
nginx: extend HTML no-cache filter to /api/ (not just /api/dictionary/)
Run 546 surfaced the second half of the cache-poisoning bug. /api/health
(which goes through the /api/ location, not /api/dictionary/) showed
`x-cache-status: STALE` text/html — meaning nginx had cached the WAF
HTML block page as a 200 entry, then served it via proxy_cache_use_stale
when the upstream returned 403 on a fresh fetch. The browser saw
text/html for an endpoint that should be JSON, console-gate flagged the
fail, and 5+ specs broke despite /api/dictionary/* being healthy.

Fix is the same one-liner already applied to /api/dictionary/: require
$no_cache_html (set in flights-api-cache.conf based on upstream's
Content-Type) so HTML responses are never stored. Future WAF spasms
return 403 directly to the client instead of dispensing months-old
poisoned HTML.
2026-04-28 13:13:31 +03:00
S
Description
No description provided
6.7 GiB
Languages
TypeScript 62.7%
HTML 23.6%
SCSS 11%
JavaScript 1.1%
C# 0.9%
Other 0.6%