Proxy inverso e URL base
Configuração
Coloca o HolyArrs num endereço como https://home.example/holyarrs, atrás do teu proxy inverso.
Um proxy inverso é o servidor web à frente das tuas apps que envia cada endereço para o contentor certo. O URL base é o caminho sob o qual o HolyArrs vive.
Definir o caminho
Ligação para Definir o caminho-
Junta o caminho ao teu ficheiro Compose:
services:holyarrs:environment:- HOLYARRS_URL_BASE=/holyarrs -
Reinicia o contentor.
-
Junta uma regra de proxy de Exemplos de proxy.
-
Abre
https://home.example/holyarrs/. Deves ver a página de início de sessão. Settings > This app (Definições > Esta app) mostra o caminho em uso.
Opções
Ligação para OpçõesOnde definir o caminho
Ligação para Onde definir o caminho| Onde | Quando entra em vigor |
|---|---|
HOLYARRS_URL_BASE |
No arranque. Tem prioridade sobre os outros. |
Opção -url-base /holyarrs |
No arranque, quando a variável não está definida. |
| Settings > This app | No arranque seguinte, só quando a variável e a opção não estão definidas. |
Exemplos de proxy
Ligação para Exemplos de proxynginx-proxy-manager. Cria um proxy host para o teu domínio e depois junta uma localização personalizada:
- Localização:
/holyarrs - Nome do host de destino
holyarrs, porta6262. Sem barra no fim, senão o caminho é retirado. - Na caixa da roda dentada dessa localização:
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. Não juntes um 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. O handle_path retira o caminho.
home.example { handle /holyarrs* { reverse_proxy holyarrs:6262 { flush_interval -1 } }}Nomes de host e endereços de proxy
Ligação para Nomes de host e endereços de proxy- Se as pessoas chegam ao HolyArrs por um nome de host, junta-o a
HOLYARRS_ALLOWED_HOSTS. - Se o proxy junta
X-Forwarded-For, junta o endereço do proxy aHOLYARRS_TRUSTED_PROXIES. Sem isso, o início de sessão não sabe quem está na tua rede de casa.
Se não funcionar
Ligação para Se não funcionar| Sintoma | Causa | Solução |
|---|---|---|
| Todas as páginas dizem que não foram encontradas | O proxy retira o caminho | Retira a definição que remove o caminho ou a barra no fim. |
| As atualizações em direto nunca chegam | O proxy guarda as respostas em buffer | Desativa o buffering (proxy_buffering off, flush_interval -1). |
| Um caminho guardado deixou-te de fora | O caminho guardado está errado | Arranca com HOLYARRS_URL_BASE=/ para o ignorar. |
| O início de sessão trata-te como estando fora da tua rede | O proxy não é de confiança | Envia X-Real-IP e X-Forwarded-For, e define HOLYARRS_TRUSTED_PROXIES. |
Mais soluções: Resolução de problemas.
Para especialistas
Ligação para Para especialistasRegras do caminho
- Carateres permitidos: letras, dígitos,
-,_,.e/. Sem..nem//. holyarrs,/holyarrse/holyarrs/querem todos dizer/holyarrs.- Um caminho guardado que não seja válido é ignorado.
- Tudo passa para debaixo do caminho: páginas, a API, atualizações em direto, início de sessão e as ligações que o HolyArrs constrói (ligações de convite, o feed do calendário).
/healthze/readyzrespondem também na raiz, para que a verificação de saúde da própria imagem continue a funcionar.- Qualquer outro endereço fora do caminho responde que não foi encontrado.
O que o proxy tem de fazer
| Necessidade | Porquê |
|---|---|
| Passar o caminho sem o alterar | O HolyArrs encaminha pelo caminho completo. |
Manter o cabeçalho Host |
As verificações de host e as ligações construídas usam-no. |
| Sem buffering das respostas | As atualizações em direto chegam por uma única resposta aberta. |
| Tempo limite de leitura longo (1 h) | O fluxo de atualizações em direto fica aberto. |
Relacionado
Ligação para RelacionadoO HolyArrs é gratuito. Se te poupou tempo, dá-lhe uma estrela no GitHub, patrocina-o ou oferece-me um café.