No meu servidor web, gostaria de bloquear todos os arquivos, exceto algumas exceções razoáveis. Eu tenho a seguinte diretiva Filesmatch que está funcionando:
<FilesMatch "(?<!\.txt|\.htm|\.html|\.css|\.php|\.js|\.jpg|\.png|\.gif|\.ico|\.svg|\.eot|\.ttf|\.woff|\.otf)$">
Order Allow,Deny
Deny from All
</FilesMatch>
Observe que este FilesMatch usa uma expressão regular lookbehind negativa: consultehttp://www.regular-expressions.info/lookaround.html. Ele bloqueará todos os arquivos, exceto aqueles com a extensão indicada.
Isso também resulta em um 403 Proibido para o documento padrão do diretório (index.html). Não é isso que eu quero. Alguém pode ajudar? Como funciona a pesquisa de documento padrão? Existe outra solução para bloquear todos, exceto alguns? Procurei no log de erros do Apache2 com depuração do LogLevel, mas a única mensagem é "cliente negado pela configuração do servidor" ao solicitar um documento padrão. (Solicitar explicitamente o index.html funciona)
Editar: existe uma solução para isso usando a diretiva Location. VerUsando FilesMatch para aumentar a segurança Então meu problema está resolvido, mas ainda gostaria de saber por que não funciona com FilesMatch.