تخطَّ إلى المحتوى

الوكيل العكسي و URL base

الإعداد

ضع HolyArrs على عنوان مثل https://home.example/holyarrs خلف الوكيل العكسي (reverse proxy) عندك.

الوكيل العكسي (reverse proxy) هو خادم الويب الذي يقف أمام تطبيقاتك ويرسل كل عنوان إلى الحاوية الصحيحة. وURL base هو المسار الذي يعمل HolyArrs تحته.

  1. أضف المسار إلى ملف Compose:

    services:
    holyarrs:
    environment:
    - HOLYARRS_URL_BASE=/holyarrs
  2. أعد تشغيل الحاوية.

  3. أضف قاعدة وكيل من أمثلة الوكيل.

  4. افتح https://home.example/holyarrs/. سترى صفحة تسجيل الدخول. وتعرض Settings > This app (الإعدادات > هذا التطبيق) المسار المستخدم.

المكان متى يسري
HOLYARRS_URL_BASE عند التشغيل. له الغلبة على البقية.
الخيار -url-base /holyarrs عند التشغيل، إذا لم يكن المتغير مضبوطًا.
Settings > This app عند التشغيل التالي، وذلك إذا لم يُضبط المتغير ولا الخيار.

nginx-proxy-manager. أنشئ proxy host لنطاقك، ثم أضف custom location:

  • الموقع (Location): /holyarrs
  • اسم المضيف المحوَّل إليه holyarrs، والمنفذ 6262. بلا شرطة مائلة في الآخر، وإلا حُذف المسار.
  • في مربع الترس لذلك الموقع:
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=6262

Caddy. استخدم handle. أما handle_path فيحذف المسار.

home.example {
handle /holyarrs* {
reverse_proxy holyarrs:6262 {
flush_interval -1
}
}
}

أسماء المضيف وعناوين الوكيل

رابط إلى أسماء المضيف وعناوين الوكيل
  • إذا كان الناس يصلون إلى HolyArrs باسم مضيف، أضفه إلى HOLYARRS_ALLOWED_HOSTS.
  • إذا كان الوكيل يضيف X-Forwarded-For، أضف عنوان الوكيل إلى HOLYARRS_TRUSTED_PROXIES. من دونه لا يعرف تسجيل الدخول من هو على شبكتك المنزلية.
العَرَض السبب الحل
كل صفحة تقول إنها غير موجودة الوكيل يحذف المسار أزل إعداد الحذف أو الشرطة المائلة في الآخر.
التحديثات الحية لا تصل أبدًا الوكيل يخزّن الردود مؤقتًا أوقف التخزين المؤقت (proxy_buffering off، flush_interval -1).
مسار محفوظ منعك من الدخول المسار المحفوظ خاطئ شغّل بـ HOLYARRS_URL_BASE=/ لتجاهله.
تسجيل الدخول يعاملك كأنك خارج شبكتك الوكيل غير موثوق أرسل X-Real-IP وX-Forwarded-For، واضبط HOLYARRS_TRUSTED_PROXIES.

حلول أخرى: حل المشكلات.

قواعد المسار
  • الرموز المسموحة: الحروف والأرقام و- و_ و. و/. لا .. ولا //.
  • holyarrs و/holyarrs و/holyarrs/ كلها تعني /holyarrs.
  • المسار المحفوظ غير الصالح يُتجاهل.
  • ينتقل كل شيء تحت المسار: الصفحات، وAPI، والتحديثات الحية، وتسجيل الدخول، والروابط التي يبنيها HolyArrs (روابط الدعوة وخلاصة التقويم).
  • يجيب /healthz و/readyz عند الجذر أيضًا، فيبقى فحص السلامة الخاص بالصورة يعمل.
  • أي عنوان آخر خارج المسار يجيب بأنه غير موجود.
ما يجب أن يفعله الوكيل
المطلوب السبب
تمرير المسار كما هو يوجّه HolyArrs الطلبات بالمسار الكامل.
إبقاء ترويسة Host تعتمد عليها فحوص المضيف والروابط المبنية.
عدم تخزين الردود مؤقتًا تتدفق التحديثات الحية عبر رد واحد مفتوح.
مهلة قراءة طويلة (ساعة) يبقى تدفق التحديثات الحية مفتوحًا.

HolyArrs مجاني. إذا وفّر عليك وقتًا، امنحه نجمة على GitHub أو ادعمه ماليًا أو ادعُني إلى فنجان قهوة.