Fluxheim/Dokumenti/Configuration Basics

Configuration Basics

Fluxheim juża TOML. Fields mhux magħrufa jiġu miċħuda, għalhekk żbalji fl-ismijiet ifallu qabel restart.

Forma ewlenija

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

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

Għal deployments multi-tenant, attiva [server.host_routing].strict = true sabiex identità tal-host nieqsa jew invalida tirritorna 400 u hosts mhux magħrufa jirritornaw 421 minflok jaslu fis-sit awtomatiku.

Kif huwa organizzat il-config

QasamX’jappartjeni hemm
serverListeners, global limits, trusted proxy handling, and redirects.
tlsGlobali TLS backend u compatibility politika.
cacheProcess-wide cache defaults and storage tiers.
vhostsHostnames, routes, web roots, proxy settings, PHP, TLS, and access policy.
metricsPrometheus u export listeners għal operational visibility.

Forma tar-rotta

[[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"]

A rotta has one matcher u one action. Exact paths win first, then longest prefixes, then regex rotot when regex support is enabled, then one fallback rotta.

Sigurtà ta' rispons HTTP

Il-profili tas-sigurtà tar-rispons HTTP huma fakultattivi. Ibda b'baseline; uża iżolament ta' oriġini inkroċjata biss wara li tittestja kull skript, font, immaġni, fluss ta' dħul, u riżorsa inkorporata.

[headers.response.hardening]
profile = "baseline"
ProfilX'tagħmel
offIżomm l-headers tat-twebbis opt-in diżattivati.
baselineIżżid iżolament konservattiv tal-browser u defaults tal-politika tar-riżorsi adattati għall-biċċa l-kbira tas-siti.
cross-origin-isolatedJippermetti iżolament strett bejn l-oriġini għal applikazzjonijiet li ttestjaw kull dipendenza esterna.

L-ebda profil ma jippermetti HSTS jew CSP. Ikkonfigura dawk separatament wara li tittestjahom kontra s-sit reali.

Metadata tar-rispons ibbażata fuq standards

Il-metadejta tar-rispons hija diżattivata b'mod awtomatiku. Ippermetti biss l-oqsma li għandek bżonn; Fluxheim joħroġhom mir-riżultat attwali tal-cache, falliment tal-prokura, u bytes tar-rispons finali mingħajr ma jesponi ċwievet tal-cache, indirizzi backend, ismijiet DNS, jew żbalji mhux ipproċessati.

[headers.response.metadata]
identifier = "edge-gateway"
cache_status = true
proxy_status = true
content_digest = true
repr_digest = true
QasamDak li tirrapporta
Cache-StatusRFC 9211 eżiti tal-cache bħal hit, miss, twassil obsolet, validazzjoni mill-ġdid, skadenza, u bypass.
Proxy-StatusRFC 9209 dettalji ta 'kardinalità baxxa għal fallimenti ġġenerati minn Fluxheim.
Content-DigestRFC 9530 SHA-256 fuq il-kontenut finali tal-messaġġ HTTP wara kompressjoni.
Repr-DigestSHA-256 biss meta Fluxheim iżomm ir-rappreżentazzjoni magħżula sħiħa.

Snapshots ħajjin u rollback

Snapshots awtentikati jistgħu jippubblikaw kandidat validat, jissostitwixxu r-router live, u jreġġgħu lura mingħajr ma jerġgħu jibdew skjeramenti normali ta' routing biss. Kull talba tibqa' fuq ġenerazzjoni waħda ta' router mill-bidu sat-tmiem.

  • Żomm il-maħżen tal-istampa f'direttorju privat iddedikat; direttorji eżistenti mhux privati u għeruq tas-sistema tal-fajls huma miċħuda.
  • Uża aġġornament tal-proċess meta s-servizzi tas-saħħa jew ta' l-iskoperta ta' load-balancer fl-isfond ikunu attivi.
  • Mexxi kontrolli ta 'integrità ta' snapshot wara l-pubblikazzjoni jew it-tkeċċija u vverifika li l-ġenerazzjoni magħżula tibqa 'ħajja mill-ġdid.
Aqra l-kuntratt snapshot sħiħ

Drawwiet sikuri

  • Run fluxheim --check-config before reloads.
  • Use one vhost per sit jew application boundary.
  • Keep sigrieti in fajls, environment, jew kontenitur sigrieti, not in pubbliku docs.
  • Żomm il-fajls tal-konfigurazzjoni u kull direttorju ġenitur eżistenti taħt sjieda fdata u mhux miktuba minn grupp jew utenti oħra.
  • Ibdel il-proċess meta jinbidlu TLS, listeners, streams, UDP, ACME, cache purging, tracing jew settings tal-proċess PHP-FPM immaniġġjat; routing ordinarju u policy waqt it-talba jistgħu jużaw snapshot reload.
  • Use rotta-level limiti għal uploads u expensive application paths.
  • Keep admin u metriki listeners privat.
Malti