Apache2.4 ProxyPass exceção dentro do bloco de localização não funciona

4

Ao tentar obter o certificado Vamos criptografar para trabalhar em um servidor local que hospeda conteúdo com proxy reverso, não consigo fazer a exceção local funcionar dentro de um bloco Location . httpd.conf snippet:

SSLProxyEngine on
<Location "/">
    ProxyPass "https://internal.host/"
    ProxyPassReverse "https://internal.host/"
</Location>
Include /etc/apache2/vhosts.d/01_acme.include

Colocar o arquivo 01_acme.include acima ou abaixo do bloco Location não tem efeito.

O arquivo 01_acme.include :

<Location /.well-known/acme-challenge/>
    ProxyPass "!"
    Alias /run/acme/.well-known/acme-challenge
</Location>

Eu coloquei um único arquivo de texto nesse diretório chamado date . A tentativa de recuperar esse arquivo resulta em um redirecionamento 301 sem fim para date/index.html/index.html/... até que o limite de redirecionamento do cliente seja atingido. Os logs mostram que isso é gerado no servidor front-end, o back-end nunca recebe uma solicitação.

Se eu substituir o bloco Local por diretivas independentes, ele funcionará como esperado:

Alias /.well-known/acme-challenge /run/acme/.well-known/acme-challenge
ProxyPass /.well-known/acme-challenge !

De acordo com a documentação ProxyPass , esse método de definir uma exceção deve funcionar. está muito bem de acordo com a configuração da amostra fornecida no final dessa seção. Isso está quebrado ou eu perdi alguma coisa?

Os redirecionamentos podem ser a causa raiz, mas não consigo encontrar nenhuma diretiva de redirecionamento ou reconfiguração neste escopo que poderia estar lançando um 301, e a única menção de index.html em .htaccess (não há um ) ou arquivos de configuração é o índice do diretório, que eu tentei desabilitar explicitamente com Options -Indexes sem efeito.

    
por Liam Dennehy 07.09.2017 / 11:36

0 respostas