Reverse proxy και URL base
Ρύθμιση
Βάλε το HolyArrs σε μια διεύθυνση όπως https://home.example/holyarrs πίσω από το reverse proxy σου.
Το reverse proxy είναι ο web server μπροστά από τις εφαρμογές σου, που στέλνει κάθε διεύθυνση στο σωστό container. Το URL base είναι η διαδρομή κάτω από την οποία ζει το HolyArrs.
Όρισε τη διαδρομή
Σύνδεσμος προς Όρισε τη διαδρομή-
Πρόσθεσε τη διαδρομή στο αρχείο Compose σου:
services:holyarrs:environment:- HOLYARRS_URL_BASE=/holyarrs -
Κάνε επανεκκίνηση στο container.
-
Πρόσθεσε έναν κανόνα proxy από τα Παραδείγματα proxy.
-
Άνοιξε το
https://home.example/holyarrs/. Θα πρέπει να δεις τη σελίδα σύνδεσης. Το Settings > This app (Ρυθμίσεις > Αυτή η εφαρμογή) δείχνει τη διαδρομή που χρησιμοποιείται.
Επιλογές
Σύνδεσμος προς ΕπιλογέςΠού ορίζεις τη διαδρομή
Σύνδεσμος προς Πού ορίζεις τη διαδρομή| Πού | Πότε ισχύει |
|---|---|
HOLYARRS_URL_BASE |
Στην εκκίνηση. Υπερισχύει των άλλων. |
Σημαία -url-base /holyarrs |
Στην εκκίνηση, όταν δεν έχει οριστεί η μεταβλητή. |
| Settings > This app | Στην επόμενη εκκίνηση, μόνο όταν δεν έχουν οριστεί ούτε η μεταβλητή ούτε η σημαία. |
Παραδείγματα proxy
Σύνδεσμος προς Παραδείγματα proxynginx-proxy-manager. Φτιάξε ένα proxy host για το domain σου και πρόσθεσε μια custom location:
- Location:
/holyarrs - Forward hostname
holyarrs, θύρα6262. Χωρίς κάθετο στο τέλος, αλλιώς η διαδρομή αφαιρείται. - Στο πλαίσιο με το γρανάζι αυτής της location:
proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_buffering off;proxy_read_timeout 1h;Traefik. Μην προσθέσεις middleware StripPrefix.
labels: - traefik.enable=true - traefik.http.routers.holyarrs.rule=Host(`home.example`) && PathPrefix(`/holyarrs`) - traefik.http.services.holyarrs.loadbalancer.server.port=6262Caddy. Χρησιμοποίησε το handle. Το handle_path αφαιρεί τη διαδρομή.
home.example { handle /holyarrs* { reverse_proxy holyarrs:6262 { flush_interval -1 } }}Ονόματα host και διευθύνσεις proxy
Σύνδεσμος προς Ονόματα host και διευθύνσεις proxy- Αν οι άνθρωποι μπαίνουν στο HolyArrs με όνομα host, πρόσθεσέ το στο
HOLYARRS_ALLOWED_HOSTS. - Αν το proxy προσθέτει
X-Forwarded-For, πρόσθεσε τη διεύθυνση του proxy στοHOLYARRS_TRUSTED_PROXIES. Χωρίς αυτό, η σύνδεση δεν μπορεί να καταλάβει ποιος είναι στο οικιακό σου δίκτυο.
Αν δεν δουλεύει
Σύνδεσμος προς Αν δεν δουλεύει| Σύμπτωμα | Αιτία | Λύση |
|---|---|---|
| Κάθε σελίδα λέει not found | Το proxy αφαιρεί τη διαδρομή | Αφαίρεσε τη ρύθμιση που κόβει τη διαδρομή ή τον κάθετο στο τέλος. |
| Οι ζωντανές ενημερώσεις δεν φτάνουν ποτέ | Το proxy κρατά τις απαντήσεις σε buffer | Απενεργοποίησε το buffering (proxy_buffering off, flush_interval -1). |
| Μια αποθηκευμένη διαδρομή σε κλείδωσε έξω | Η αποθηκευμένη διαδρομή είναι λάθος | Ξεκίνα με HOLYARRS_URL_BASE=/ για να την αγνοήσεις. |
| Η σύνδεση σε θεωρεί εκτός του δικτύου σου | Το proxy δεν είναι έμπιστο | Στείλε τα X-Real-IP και X-Forwarded-For και όρισε το HOLYARRS_TRUSTED_PROXIES. |
Περισσότερες λύσεις: Επίλυση προβλημάτων.
Για έμπειρους
Σύνδεσμος προς Για έμπειρουςΚανόνες διαδρομής
- Επιτρεπόμενοι χαρακτήρες: γράμματα, ψηφία,
-,_,.και/. Όχι..ή//. - Τα
holyarrs,/holyarrsκαι/holyarrs/σημαίνουν όλα/holyarrs. - Μια αποθηκευμένη διαδρομή που δεν είναι έγκυρη αγνοείται.
- Όλα μετακινούνται κάτω από τη διαδρομή: οι σελίδες, το API, οι ζωντανές ενημερώσεις, η σύνδεση και οι σύνδεσμοι που φτιάχνει το HolyArrs (σύνδεσμοι πρόσκλησης, το feed του ημερολογίου).
- Τα
/healthzκαι/readyzαπαντούν και στη ρίζα, ώστε ο έλεγχος υγείας της ίδιας της image να συνεχίσει να δουλεύει. - Κάθε άλλη διεύθυνση εκτός της διαδρομής απαντά not found.
Τι πρέπει να κάνει το proxy
| Απαίτηση | Γιατί |
|---|---|
| Να περνά τη διαδρομή όπως είναι | Το HolyArrs δρομολογεί με την πλήρη διαδρομή. |
Να κρατά την κεφαλίδα Host |
Οι έλεγχοι host και οι σύνδεσμοι που φτιάχνονται τη χρησιμοποιούν. |
| Χωρίς buffering απαντήσεων | Οι ζωντανές ενημερώσεις έρχονται μέσα από μία ανοιχτή απάντηση. |
| Μεγάλο read timeout (1 ώρα) | Η ροή των ζωντανών ενημερώσεων μένει ανοιχτή. |
Σχετικά
Σύνδεσμος προς ΣχετικάΤο HolyArrs είναι δωρεάν. Αν σου γλίτωσε χρόνο, βάλε του αστέρι στο GitHub, γίνε χορηγός ή κέρασέ με έναν καφέ.