Пређи на садржај

Реверс прокси и URL base

Подешавање

Постави HolyArrs на адресу попут https://home.example/holyarrs иза свог реверс проксија.

Реверс прокси је веб сервер испред твојих апликација који шаље сваку адресу у прави контејнер. 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
  • Forward hostname holyarrs, port 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. Не додај StripPrefix middleware.

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 заглавље Провере хоста и изграђени линкови га користе.
Без баферовања одговора Ажурирања уживо теку преко једног отвореног одговора.
Дуг read timeout (1 h) Ток ажурирања уживо остаје отворен.

Повезане странице

Линк до Повезане странице

HolyArrs је бесплатан. Ако ти је уштедео време, остави звездицу на GitHub-у, постани спонзор или купи ми кафу.