Eu preciso proteger um local com o htpasswd e que está funcionando bem com :
<Location /myloc>
AuthType Basic
AuthName "My Protected Area"
AuthUserFile .htpasswd
Require valid-user
</Location>
Mas, de alguma forma, preciso ignorar esse Auth, por exemplo, para url / myloc / loc1, mas não para / myloc / loc2. A razão para isso é que eu quero ser capaz de obter, por exemplo
loc1 e fazer alguma pesquisa no banco de dados. Por exemplo:
"select Status From table where url=/myloc/requested_loc" (loc1 or loc2 or any name)
if Status == 1
return 1
else
return 0
Assim, os cenários são os seguintes:
- executa algum scritp antes dos navegadores solicitarem user / pass
- se o script retornar 0 prompt para usuário / passagem
Se o script retornar 1, não solicite usuário / senha e local aberto
Algumas ideias:
1. Eu estava pensando em modificar o link
mas não tenho certeza se é uma boa ideia (tenho certeza que é uma ideia terrível).
- Para ter algumas ScriptAlias / myloc /opt/script.py que verificarão o que eu preciso no banco de dados e, em seguida, se eu abrir um local se 2 enviar para o navegador 401 auth necessário.
E aí minhas ideias terminam.
Não estou à procura de solução, apenas algumas ideias de que direção seguir.
SOLUÇÃO E ATUALIZAÇÃO
Eu sou tão idiota que não vou fazer o Auth on / myloc. Eu farei Auth em arquivos criados dinamicamente loc1.conf, loc2.conf e assim por diante, e então eu irei incluí-lo na configuração do host virtual do apache.
<VirtualHost *:80>
domain
......
Include /path/loc1.conf
Include /path/loc2.conf
....
</VirtualHost>
@HBruijn me deu essa ideia.