apache2 config - variável não avaliada em string

1

Eu quero que rotas diferentes tenham sua própria senha. Então eu tenho um LocationMatch :

<LocationMatch /shiny/(?<appname>.*)>
       AuthType Basic
       AuthName "Enter your login name and password"
       AuthUserFile "/path/to/directory/with/passwords/.%{env:MATCH_APPNAME}.pwd"
       Require valid-user
</LocationMatch>

Mas estou recebendo 500 Internal Server Error, porque %{env:MATCH_APPNAME} não é avaliado:

[Thu Sep 20 12:11:21.678370 2018] [authn_file:error] [pid 16932:tid 140332725917440] (2)No such file or directory: [client xxx.xxx.xxx.xxx:52274] AH01620: Could not open password file: /path/to/directory/with/passwords/.%{env:MATCH_APPNAME}.pwd

Estou seguindo as instruções oficiais aqui . O que estou fazendo de errado? Obrigado.

versão do apache2: apache2 (OpenRC) 0.34.11 (Gentoo Linux)

    
por jirinovo 20.09.2018 / 12:24

1 resposta

1

Como mencionado nos documentos que você citou, o Apache suporta este estilo de referências de regex em expressões ( docs ), mas AuthUserFile espera um arquivo caminho como um argumento - pegando sua string literalmente.

Consulte os documentos da diretriz If para ver como uma diretiva que dá suporte a uma expressão é listada . A página de documentação sobre expressões tem uma lista de diretivas que as suportam.

    
por 20.09.2018 / 16:37

Tags