Fluxheim/Ducumentazione/Configuration Basics

Configuration Basics

Fluxheim usa TOML. 'E campi sconosciuti veneno rifiutati, quindi 'e errori 'e battitura falliscono primma d'o riavvio.

Forma principale

[server]
listen = ["0.0.0.0:8080"]
default_vhost = "site"

[[vhosts]]
name = "site"
hosts = ["example.com"]

Pe deployment multi-tenant, attiva [server.host_routing].strict = true, accussì n’identità host mancante o nun valida torna 400 e ll’host scanusciute tornano 421 invece ’e arrivà ô sito predefinito.

Comme è organizzato 'o config

SezioneCosa appartiene lì
serverListeners, global limits, trusted proxy handling, and redirects.
tlsBackend TLS globale e policy compatibilità.
cacheProcess-wide cache defaults and storage tiers.
vhostsHostnames, routes, web roots, proxy settings, PHP, TLS, and access policy.
metricsPrometheus e listener export pe visibilità operativa.

Forma d'a route

[[vhosts.routes]]
name = "app"
path_prefix = "/app/"
methods = ["GET", "HEAD", "POST"]
max_request_body_bytes = "16MiB"

[vhosts.routes.proxy]
upstreams = ["127.0.0.1:3000"]

Na route ha nu matcher e un'azione. 'E path esatti vincono primma, poi 'e prefissi cchiù lunghi, poi route regex quanno 'o supporto regex è abilitato, infine na route fallback.

Sicurezza d''a risposta HTTP

'E profile 'e sicurezza d''a risposta HTTP so' opzionale. Accumincia cu baseline; usa ll'isolamento cross-origin sulo doppo avé testato ogne script, font, immagine, flusso 'e accesso e risorsa incorporata.

[headers.response.hardening]
profile = "baseline"
ProfiloChello ca fa
offLassa disattivate ll'header opzionale 'e hardening.
baselineAggiogne isolamento prudente d''o browser e valore predefinite d''e policy d''e risorse adatte â maggior parte d''e site.
cross-origin-isolatedAbilita isolamento cross-origin stritto pe' ll'applicazione ca hanno testato tutte 'e dipendenze esterne.

Nisciuno d''e due profile abilita HSTS o CSP. Configurale a parte doppo avéle testate ncopp''o sito overo.

Metadate d''a risposta basate ncopp''e standard

'E metadate d''a risposta songo disattivate pe default. Attiva sulamente 'e campe ca te servono; Fluxheim 'e ricava d''o risultato vero d''a cache, d''o guasto d''o proxy e d''e byte finale d''a risposta, senza fa vedé chiave d''a cache, indirizze d''o backend, nomme DNS o errore grezze.

[headers.response.metadata]
identifier = "edge-gateway"
cache_status = true
proxy_status = true
content_digest = true
repr_digest = true
CampoChe segnala
Cache-StatusRisultate d''a cache RFC 9211 comme hit, miss, inoltro stantio, rivalidazione, scadenza e bypass.
Proxy-StatusDettaglie a bassa cardinalità RFC 9209 pe guaste generate da Fluxheim.
Content-DigestRFC 9530 SHA-256 ncopp''o contenuto finale d''o messaggio HTTP doppo 'a compressione.
Repr-DigestSHA-256 sulamente quanno Fluxheim tene 'a rappresentazione scelta completa.

Snapshot live e rollback

'E snapshot autenticate ponno pubblicà nu candidato validato, cagnà 'o router attivo e fa rollback senza riavvià 'e normali installazione sulamente 'e routing. Ogne richiesta resta ncopp''a stessa generazione d''o router d''o principio â fine.

  • Tene 'o deposito d''e snapshot dint''a na cartella privata dedicata; 'e cartelle esistente nun private e 'e radice d''o filesystem veneno rifiutate.
  • Usa n'aggiornamento d''o processo quanno songo attive 'e servizie 'n sottofondo pe 'a salute o 'a scoperta d''o load balancer.
  • Fa 'e cuntrolle d''integrità d''e snapshot doppo 'a pubblicazione o 'o rollback e verifica ca 'a generazione scelta resta doppo 'o riavvio.
Liegge 'o cuntratto cumpleto d''e snapshot

Abitudini sicure

  • Run fluxheim --check-config before reloads.
  • Usa nu vhost pe sito o pe boundary applicativo.
  • Tieni 'e segreti in file, environment o secret container, nun dint' 'a ducumentazione pubblica.
  • ’E file ’e configurazione e tutte ’e directory superiore esistente hann’ ’a restà sott’ a na proprietà affidabile e nun hann’ ’a essere scrivibile d’ ’o gruppo o d’ ati utenti.
  • Cagna ’o processo quanno cagnano TLS, listener, stream, UDP, ACME, pulizia d’ ’a cache, tracing o impostazioni d’ ’o processo PHP-FPM gestito; ’o routing normale e ’e policy durante ’a richiesta ponno usà nu snapshot reload.
  • Usa limiti a livello route pe upload e path applicativi costosi.
  • Mantieni privati 'e listener admin e metrics.
Napulitano