|
All checks were successful
CI Trade-In / changes (pull_request) Successful in 14s
CI Trade-In / backend-tests (pull_request) Has been skipped
CI / changes (pull_request) Successful in 17s
CI Trade-In / browser-tests (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Has been skipped
CI / backend-tests (pull_request) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Has been skipped
meraocenka.ru — публичный B2C-домен, не отдавал ни HSTS, ни защиту от встраивания во фрейм, ни X-Content-Type-Options/Referrer-Policy. Добавлен блок header: HSTS на 180 суток (без includeSubDomains/preload — оба флага практически необратимы, не все поддомены под контролем), X-Frame-Options: DENY + CSP frame-ancestors 'none' (старые клиенты + современный механизм), nosniff, strict-origin-when-cross-origin, плюс снятие Server/X-Powered-By. Полноценный CSP (default-src/script-src) — отдельная работа, здесь только периметр вокруг фрейма. Next.js (tradein-mvp/frontend) эти заголовки не выставляет — дублирования нет. handle_path /preview/* отдавал листинг каталога (file_server browse). Публичность самих макетов намеренная и задокументирована — убран только листинг, файлы по прямой ссылке продолжают отдаваться. Проверено: caddy validate --config apps.caddy --adapter caddyfile → Valid configuration (до и после правки, с учётом относительных import вида ../users.caddy.snippet — apps.caddy валиден только при монтировании родительского caddy/, не caddy/sites/ отдельно). Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JY6iWDnGDthdvsMWgK1BMG |
||
|---|---|---|
| .. | ||
| local | ||
| sites | ||
| deploy-window.caddy.snippet | ||
| metrics-ingest.caddy.snippet | ||
| metrics-ui.caddy.snippet | ||
| users.caddy.snippet | ||