Configuration Basics
Fluxheim používa TOML. Neznáme polia sa odmietajú, takže preklepy zlyhajú pred reštartom.
Hlavný tvar
[server]
listen = ["0.0.0.0:8080"]
default_vhost = "site"
[[vhosts]]
name = "site"
hosts = ["example.com"]
Pri viacnájomných nasadeniach povoľte [server.host_routing].strict = true, aby chýbajúca alebo neplatná identita hostiteľa vrátila 400 a neznámi hostitelia 421 namiesto predvolenej stránky.
Jak je config organizovaný
| Oblast | Co sam patří |
|---|---|
server | Listeners, global limits, trusted proxy handling, and redirects. |
tls | Globální TLS backend a compatibility policy. |
cache | Process-wide cache defaults and storage tiers. |
vhosts | Hostnames, routes, web roots, proxy settings, PHP, TLS, and access policy. |
metrics | Prometheus a export listener pre prevádzkuní viditelnost. |
Tvar 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"]
Route má jeden matcher a jednu action. Exact path vyhrává prvý, potom nejdelší prefix, potom regex route pri zapnuté regex support a nakonec fallback route.
Zabezpečenie odozvy HTTP
Profily zabezpečenia odozvy HTTP sú voliteľné. Začnite s baseline; izoláciu medzi pôvodom použite až po otestovaní každého skriptu, písma, obrázka, prihlasovacieho postupu a vloženého zdroja.
[headers.response.hardening]
profile = "baseline"
| Profil | Čo to robí |
|---|---|
off | Ponechá deaktivované voliteľné vytvrdzovacie hlavičky. |
baseline | Pridáva konzervatívnu izoláciu prehliadača a predvolené nastavenia politiky zdrojov vhodné pre väčšinu stránok. |
cross-origin-isolated | Umožňuje prísnu izoláciu medzi pôvodom pre aplikácie, ktoré testovali všetky externé závislosti. |
Ani jeden profil neumožňuje HSTS alebo CSP. Nakonfigurujte ich samostatne po ich otestovaní na skutočnej lokalite.
Metadáta odpovede založené na štandardoch
Metadáta odpovede sú predvolene zakázané. Povoľte iba polia, ktoré potrebujete; Fluxheim ich odvodzuje zo skutočného výsledku vyrovnávacej pamäte, zlyhania servera proxy a bajtov konečnej odpovede bez odhalenia kľúčov vyrovnávacej pamäte, adries koncového servera, názvov DNS alebo nespracovaných chýb.
[headers.response.metadata]
identifier = "edge-gateway"
cache_status = true
proxy_status = true
content_digest = true
repr_digest = true
| Pole | Čo hlási |
|---|---|
Cache-Status | Výsledky vyrovnávacej pamäte RFC 9211, ako sú hit, miss, zastarané presmerovanie, opätovné overenie, uplynutie platnosti a obídenie. |
Proxy-Status | Podrobnosti o nízkej kardinalite RFC 9209 pre zlyhania generované Fluxheim. |
Content-Digest | RFC 9530 SHA-256 nad konečným obsahom správy HTTP po kompresii. |
Repr-Digest | SHA-256 len vtedy, keď Fluxheim obsahuje kompletnú zvolenú reprezentáciu. |
Živé snímky a vrátenie späť
Overené snímky môžu zverejniť overeného kandidáta, nahradiť aktívny smerovač a vrátiť sa späť bez reštartovania bežných nasadení iba pre smerovanie. Každá požiadavka zostáva na jednej generácii smerovača od začiatku do konca.
- Uchovávajte úložisko snímok vo vyhradenom súkromnom adresári; existujúce neprivátne adresáre a korene súborového systému sú odmietnuté.
- Inováciu procesu použite, keď sú aktívne služby na vyvažovanie zaťaženia alebo zisťovanie na pozadí.
- Spustite kontroly integrity snímky po zverejnení alebo vrátení a overte, či vybratá generácia prežije reštart.
Bezpečné návyky
- Run
fluxheim --check-configbefore reloads. - Použi jeden vhost na site alebo application boundary.
- Drž secret vo file, environment alebo container secrets, nie vo verejnej dokumentácii.
- Konfiguračné súbory a každý existujúci nadradený adresár ponechajte v dôveryhodnom vlastníctve a bez práva zápisu pre skupinu alebo ostatných používateľov.
- Pri zmene nastavení TLS, listenerov, streamov, UDP, ACME, čistenia cache, tracingu alebo spravovaného procesu PHP-FPM proces nahraďte; bežné smerovanie a pravidlá počas požiadavky môžu použiť opätovné načítanie snapshotu.
- Použi route-level limity pre upload a drahé application path.
- Drž admin a metrics listener privátny.