Configuration Basics
Το Fluxheim χρησιμοποιεί TOML. Άγνωστα fields απορρίπτονται, οπότε τα ορθογραφικά λάθη αποτυγχάνουν πριν το restart.
Κύρια μορφή
[server]
listen = ["0.0.0.0:8080"]
default_vhost = "site"
[[vhosts]]
name = "site"
hosts = ["example.com"]
Για εγκαταστάσεις πολλών μισθωτών, ενεργοποιήστε το [server.host_routing].strict = true, ώστε μια ελλιπής ή μη έγκυρη ταυτότητα host να επιστρέφει 400 και οι άγνωστοι hosts να επιστρέφουν 421 αντί να οδηγούνται στον προεπιλεγμένο ιστότοπο.
Πώς οργανώνεται το config
| Περιοχή | Τι ανήκει εκεί |
|---|---|
server | Listeners, global limits, trusted proxy handling, and redirects. |
tls | Global TLS backend και compatibility policy. |
cache | Process-wide cache defaults and storage tiers. |
vhosts | Hostnames, routes, web roots, proxy settings, PHP, TLS, and access policy. |
metrics | Prometheus και export listeners για operational visibility. |
Μορφή 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 έχει έναν matcher και μία action. Exact paths κερδίζουν πρώτα, μετά longest prefixes, μετά regex routes όταν ενεργοποιείται regex support, και μετά ένα fallback route.
Ασφάλεια απόκρισης HTTP
Τα προφίλ ασφαλείας απόκρισης HTTP είναι προαιρετικά. Ξεκινήστε με baseline. χρησιμοποιήστε απομόνωση πολλαπλής προέλευσης μόνο αφού δοκιμάσετε κάθε σενάριο, γραμματοσειρά, εικόνα, ροή εισόδου και ενσωματωμένο πόρο.
[headers.response.hardening]
profile = "baseline"
| Προφίλ | Τι κάνει |
|---|---|
off | Διατηρεί απενεργοποιημένες τις κεφαλίδες σκληρύνσεως συμμετοχής. |
baseline | Προσθέτει συντηρητική απομόνωση προγράμματος περιήγησης και προεπιλογές πολιτικής πόρων κατάλληλες για τους περισσότερους ιστότοπους. |
cross-origin-isolated | Επιτρέπει την αυστηρή απομόνωση πολλαπλής προέλευσης για εφαρμογές που έχουν δοκιμάσει κάθε εξωτερική εξάρτηση. |
Κανένα προφίλ δεν ενεργοποιεί το HSTS ή το CSP. Διαμορφώστε τα ξεχωριστά αφού τα δοκιμάσετε σε σχέση με τον πραγματικό ιστότοπο.
Μεταδεδομένα απόκρισης που βασίζονται σε πρότυπα
Τα μεταδεδομένα απόκρισης είναι απενεργοποιημένα από προεπιλογή. Ενεργοποιήστε μόνο τα πεδία που χρειάζεστε. Το Fluxheim τα αντλεί από το πραγματικό αποτέλεσμα της κρυφής μνήμης, την αποτυχία διακομιστή μεσολάβησης και τα byte τελικής απόκρισης χωρίς να εκτίθενται κλειδιά κρυφής μνήμης, διευθύνσεις υποστήριξης, ονόματα DNS ή πρωτογενή σφάλματα.
[headers.response.metadata]
identifier = "edge-gateway"
cache_status = true
proxy_status = true
content_digest = true
repr_digest = true
| Πεδίο | Τι αναφέρει |
|---|---|
Cache-Status | Αποτελέσματα κρυφής μνήμης RFC 9211, όπως επιτυχία, αστοχία, μπαγιάτικη προώθηση, επανεπικύρωση, λήξη και παράκαμψη. |
Proxy-Status | RFC 9209 λεπτομέρειες χαμηλής καρδινικότητας για αστοχίες που δημιουργούνται από το Fluxheim. |
Content-Digest | RFC 9530 SHA-256 πάνω από το τελικό περιεχόμενο μηνύματος HTTP μετά τη συμπίεση. |
Repr-Digest | SHA-256 μόνο όταν το Fluxheim διατηρεί την πλήρη επιλεγμένη αναπαράσταση. |
Ζωντανά στιγμιότυπα και επαναφορά
Τα επαληθευμένα στιγμιότυπα μπορούν να δημοσιεύσουν έναν επικυρωμένο υποψήφιο, να αντικαταστήσουν τον ζωντανό δρομολογητή και να επιστρέψουν χωρίς επανεκκίνηση των κανονικών αναπτύξεων μόνο για δρομολόγηση. Κάθε αίτημα παραμένει σε μια γενιά δρομολογητή από την αρχή μέχρι το τέλος.
- Διατηρήστε το κατάστημα στιγμιότυπων σε έναν αποκλειστικό ιδιωτικό κατάλογο. Οι υπάρχοντες μη ιδιωτικοί κατάλογοι και οι ρίζες του συστήματος αρχείων απορρίπτονται.
- Χρησιμοποιήστε μια αναβάθμιση διεργασίας όταν είναι ενεργές οι υπηρεσίες υγείας ή ανακάλυψης της εξισορρόπησης φορτίου στο παρασκήνιο.
- Εκτελέστε ελέγχους ακεραιότητας στιγμιότυπου μετά τη δημοσίευση ή την επαναφορά και βεβαιωθείτε ότι η επιλεγμένη γενιά επιβιώνει επανεκκίνηση.
Ασφαλείς συνήθειες
- Run
fluxheim --check-configbefore reloads. - Χρησιμοποίησε ένα vhost ανά site ή application boundary.
- Κράτα secrets σε files, environment ή container secrets, όχι σε public docs.
- Διατηρείτε τα αρχεία ρυθμίσεων και κάθε υπάρχοντα γονικό κατάλογο υπό αξιόπιστη ιδιοκτησία και χωρίς δικαίωμα εγγραφής για την ομάδα ή άλλους χρήστες.
- Αντικαταστήστε τη διεργασία όταν αλλάζουν ρυθμίσεις TLS, listeners, streams, UDP, ACME, εκκαθάρισης cache, tracing ή διαχειριζόμενης διεργασίας PHP-FPM· η συνήθης δρομολόγηση και η πολιτική κατά την επεξεργασία αιτήματος μπορούν να χρησιμοποιούν επαναφόρτωση snapshot.
- Χρησιμοποίησε route-level limits για uploads και ακριβά application paths.
- Κράτα admin και metrics listeners private.