Proxy inverso y URL base
Configuración
Pon HolyArrs en una dirección como https://home.example/holyarrs detrás de tu proxy inverso.
Un proxy inverso es el servidor web que está delante de tus apps y envía cada dirección al contenedor correcto. La URL base es la ruta bajo la que vive HolyArrs.
Configurar la ruta
Enlace a Configurar la ruta-
Añade la ruta a tu archivo Compose:
services:holyarrs:environment:- HOLYARRS_URL_BASE=/holyarrs -
Reinicia el contenedor.
-
Añade una regla de proxy de Ejemplos de proxy.
-
Abre
https://home.example/holyarrs/. Deberías ver la página de inicio de sesión. Settings > This app (Ajustes > Esta app) muestra la ruta en uso.
Opciones
Enlace a OpcionesDónde configurar la ruta
Enlace a Dónde configurar la ruta| Dónde | Cuándo se aplica |
|---|---|
HOLYARRS_URL_BASE |
Al iniciar. Gana a las demás. |
Opción -url-base /holyarrs |
Al iniciar, cuando la variable no está definida. |
| Settings > This app | En el siguiente inicio, solo cuando ni la variable ni la opción están definidas. |
Ejemplos de proxy
Enlace a Ejemplos de proxynginx-proxy-manager. Crea un host de proxy para tu dominio y luego añade una ubicación personalizada:
- Ubicación:
/holyarrs - Nombre de host de destino
holyarrs, puerto6262. Sin barra al final, o se quita la ruta. - En el cuadro del engranaje de esa ubicación:
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. No añadas un middleware StripPrefix.
labels: - traefik.enable=true - traefik.http.routers.holyarrs.rule=Host(`home.example`) && PathPrefix(`/holyarrs`) - traefik.http.services.holyarrs.loadbalancer.server.port=6262Caddy. Usa handle. handle_path quita la ruta.
home.example { handle /holyarrs* { reverse_proxy holyarrs:6262 { flush_interval -1 } }}Nombres de host y direcciones del proxy
Enlace a Nombres de host y direcciones del proxy- Si la gente llega a HolyArrs por un nombre de host, añádelo a
HOLYARRS_ALLOWED_HOSTS. - Si el proxy añade
X-Forwarded-For, añade la dirección del proxy aHOLYARRS_TRUSTED_PROXIES. Sin eso, el inicio de sesión no puede saber quién está en tu red de casa.
Si no funciona
Enlace a Si no funciona| Síntoma | Causa | Solución |
|---|---|---|
| Todas las páginas dicen que no se encontraron | El proxy quita la ruta | Quita el ajuste que la recorta o la barra final. |
| Las actualizaciones en vivo nunca llegan | El proxy guarda las respuestas en búfer | Desactiva el búfer (proxy_buffering off, flush_interval -1). |
| Una ruta guardada te dejó fuera | La ruta guardada es incorrecta | Inicia con HOLYARRS_URL_BASE=/ para ignorarla. |
| El inicio de sesión te trata como si estuvieras fuera de tu red | El proxy no es de confianza | Envía X-Real-IP y X-Forwarded-For, y define HOLYARRS_TRUSTED_PROXIES. |
Más soluciones: Solución de problemas.
Para expertos
Enlace a Para expertosReglas de la ruta
- Caracteres permitidos: letras, dígitos,
-,_,.y/. Sin..ni//. holyarrs,/holyarrsy/holyarrs/significan todos/holyarrs.- Una ruta guardada que no es válida se ignora.
- Todo pasa a estar bajo la ruta: las páginas, la API, las actualizaciones en vivo, el inicio de sesión y los enlaces que crea HolyArrs (enlaces de invitación, el feed del calendario).
/healthzy/readyztambién responden en la raíz, así que la comprobación de salud propia de la imagen sigue funcionando.- Cualquier otra dirección fuera de la ruta responde que no se encontró.
Qué debe hacer el proxy
| Necesidad | Por qué |
|---|---|
| Pasar la ruta sin cambios | HolyArrs enruta por la ruta completa. |
Conservar la cabecera Host |
La usan las comprobaciones de host y los enlaces creados. |
| Sin búfer de respuestas | Las actualizaciones en vivo se transmiten por una sola respuesta abierta. |
| Tiempo de espera de lectura largo (1 h) | La transmisión de actualizaciones en vivo se queda abierta. |
Relacionado
Enlace a RelacionadoHolyArrs es gratis. Si te ahorró tiempo, dale una estrella en GitHub, patrocínalo o invítame a un café.