Reverse proxy ו-URL base
הגדרה
שים את HolyArrs בכתובת כמו https://home.example/holyarrs מאחורי ה-reverse proxy שלך.
Reverse proxy הוא שרת האינטרנט שעומד לפני האפליקציות שלך ושולח כל כתובת לקונטיינר הנכון. URL base הוא הנתיב ש-HolyArrs יושב תחתיו.
להגדיר את הנתיב
קישור אל להגדיר את הנתיב-
הוסף את הנתיב לקובץ ה-Compose שלך:
services:holyarrs:environment:- HOLYARRS_URL_BASE=/holyarrs -
הפעל מחדש את הקונטיינר.
-
הוסף כלל proxy מתוך דוגמאות ל-proxy.
-
פתח את
https://home.example/holyarrs/. אתה אמור לראות את דף ההתחברות. Settings > This app (הגדרות > האפליקציה הזו) מציג את הנתיב שבשימוש.
אפשרויות
קישור אל אפשרויותאיפה להגדיר את הנתיב
קישור אל איפה להגדיר את הנתיב| איפה | מתי נכנס לתוקף |
|---|---|
HOLYARRS_URL_BASE |
בהפעלה. גובר על האחרים. |
הדגל -url-base /holyarrs |
בהפעלה, כשהמשתנה לא מוגדר. |
| Settings > This app | בהפעלה הבאה, רק כשהמשתנה והדגל שניהם לא מוגדרים. |
דוגמאות ל-proxy
קישור אל דוגמאות ל-proxynginx-proxy-manager. צור proxy host לדומיין שלך, ואז הוסף 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 } }}שמות מארח וכתובות proxy
קישור אל שמות מארח וכתובות proxy- אם אנשים מגיעים ל-HolyArrs דרך שם מארח, הוסף אותו ל-
HOLYARRS_ALLOWED_HOSTS. - אם ה-proxy מוסיף
X-Forwarded-For, הוסף את הכתובת של ה-proxy ל-HOLYARRS_TRUSTED_PROXIES. בלי זה, ההתחברות לא יכולה לדעת מי נמצא ברשת הביתית שלך.
אם זה לא עובד
קישור אל אם זה לא עובד| תסמין | סיבה | פתרון |
|---|---|---|
| כל דף אומר שלא נמצא | ה-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.- HolyArrs מתעלם מנתיב שמור שאינו תקין.
- הכול עובר תחת הנתיב: דפים, ה-API, עדכונים חיים, התחברות, וקישורים ש-HolyArrs בונה (קישורי הזמנה, פיד לוח השנה).
/healthzו-/readyzעונים גם בשורש, כך שבדיקת התקינות של האימג’ עצמו ממשיכה לעבוד.- כל כתובת אחרת מחוץ לנתיב עונה שלא נמצא.
מה ה-proxy חייב לעשות
| צורך | למה |
|---|---|
| להעביר את הנתיב כמו שהוא | HolyArrs מנתב לפי הנתיב המלא. |
לשמור על הכותרת Host |
בדיקות המארח והקישורים הנבנים משתמשים בה. |
| בלי buffering של תשובות | עדכונים חיים זורמים על תשובה פתוחה אחת. |
| זמן קריאה ארוך (שעה) | זרם העדכונים החיים נשאר פתוח. |
קשור
קישור אל קשורHolyArrs חינמי. אם זה חסך לך זמן, תן לו כוכב ב-GitHub, תמוך בפרויקט או קנה לי קפה.