Configuration Basics
Fluxheim brûkt TOML. Unbekende fjilden wurde ôfwiisd, sadat staveringsflaters mislearje foardat jo opnij starte.
Haadfoarm
[server]
listen = ["0.0.0.0:8080"]
default_vhost = "site"
[[vhosts]]
name = "site"
hosts = ["example.com"]
Skeakelje by ynstallaasjes mei meardere hierders [server.host_routing].strict = true yn, sadat in ûntbrekkende of ûnjildige hostidentiteit 400 jout en ûnbekende hosts 421 jouwe ynstee fan de standertside te berikken.
Hoe konfiguraasje wurdt organisearre
| Gebiet | Wat heart dêr |
|---|---|
server | Listeners, global limits, trusted proxy handling, and redirects. |
tls | Global TLS backend en komptabiliteit belied. |
cache | Process-wide cache defaults and storage tiers. |
vhosts | Hostnames, routes, web roots, proxy settings, PHP, TLS, and access policy. |
metrics | Prometheus en eksportearje harkers foar operasjonele sichtberens. |
Rûte foarm
[[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"]
In rûte hat ien matcher en ien aksje. Krekte paden winne earst, dan langste foarheaksels, dan regex-rûtes as regex-stipe ynskeakele is, dan ien fallback-rûte.
HTTP antwurd feiligens
HTTP-antwurd-feiligensprofilen binne opsjoneel. Begjin mei baseline; brûk isolaasje fan cross-origin allinich nei it testen fan elk skript, lettertype, ôfbylding, oanmeldstream en ynbêde boarne.
[headers.response.hardening]
profile = "baseline"
| Profyl | Wat it docht |
|---|---|
off | Hâldt de opt-in hurde kopteksten útskeakele. |
baseline | Foeget konservative browser-isolaasje en standertynstellingen foar boarnebelied ta dy't geskikt binne foar de measte siden. |
cross-origin-isolated | Stelt strikte isolaasje fan krús-oarsprong yn foar applikaasjes dy't elke eksterne ôfhinklikens hawwe hifke. |
Gjin fan beide profyl makket HSTS of CSP mooglik. Konfigurearje dy apart nei it testen fan se tsjin de echte side.
Noarmen-basearre antwurd metadata
Antwurdmetadata is standert útskeakele. Skeakelje allinich de fjilden yn dy't jo nedich binne; Fluxheim ûntliend se fan it eigentlike cache-resultaat, proxy-mislearring, en definitive antwurdbytes sûnder cache-kaaien, efterkantadressen, DNS-nammen of rauwe flaters te bleatsjen.
[headers.response.metadata]
identifier = "edge-gateway"
cache_status = true
proxy_status = true
content_digest = true
repr_digest = true
| Field | Wat it rapportearret |
|---|---|
Cache-Status | RFC 9211-cache-útkomsten lykas hit, miss, ferâldere trochstjoering, revalidaasje, ferfallen en bypass. |
Proxy-Status | RFC 9209 lege kardinaliteit details foar mislearrings oanmakke troch Fluxheim. |
Content-Digest | RFC 9530 SHA-256 oer de definitive HTTP berjochtynhâld nei kompresje. |
Repr-Digest | SHA-256 allinich as Fluxheim de folsleine selektearre fertsjintwurdiging hâldt. |
Live snapshots en weromdraaien
Ferifiearre snapshots kinne in falidearre kandidaat publisearje, de live router ferfange, en weromrolle sûnder normale routing-allinich ynset op 'e nij te begjinnen. Elk fersyk bliuwt op ien routergeneraasje fan begjin oant ein.
- Hâld de snapshotwinkel yn in tawijd privee map; besteande net-privee mappen en triemsysteem woartels wurde ôfwiisd.
- Brûk in proses upgrade as eftergrûn load-balancer sûnens of ûntdekking tsjinsten binne aktyf.
- Utfiere snapshot-yntegriteitskontrôles nei publikaasje of weromdraaien en ferifiearje dat de selekteare generaasje trochstart oerlibbet.
Feilige gewoanten
- Run
fluxheim --check-configbefore reloads. - Brûk ien vhost per side of applikaasjegrins.
- Hâld geheimen yn bestannen, omjouwing of kontenergeheimen, net yn iepenbiere dokuminten.
- Hâld konfiguraasjebestannen en alle besteande boppelizzende mappen yn fertroud eigendom en net beskriuwber foar de groep of oare brûkers.
- Ferfang it proses as ynstellings foar TLS, listeners, streams, UDP, ACME, cache-opromjen, tracing of behearde PHP-FPM-prosessen feroarje; gewoane routing en belied op it momint fan de oanfraach kinne in snapshot opnij lade.
- Brûk grinzen op rûtenivo foar uploads en djoere applikaasjepaden.
- Hâld harkers fan admin en metriken privee.