Qual é o sentido de colocar “Deny from All” imediatamente antes de “Allow from All” em uma diretiva Apache?

3

Eu tenho visto muitos exemplos de arquivos httpd.conf contendo diretivas como este da IBM :

<Location /server-status>
    SetHandler server-status
    Order Deny,Allow
    Deny from all
    Allow from all
</Location>

Na verdade, pesquisar no Google a frase exata "negar a partir de todos permitem de todos " retorna quase 3 milhões de resultados.

Meu entendimento desta diretiva é que, com base no Order especificado, o Apache negará a você o acesso a /server-status , independentemente de quem você seja, mas, em seguida, substituirá imediatamente essa decisão e permitirá o acesso. Isso está correto? Existe alguma diferença funcional (ou mesmo teórica ou filosófica) entre a diretiva acima e a próxima?

<Location /server-status>
    SetHandler server-status
    Order Deny,Allow
    Allow from all
</Location>
    
por Michael Underwood 14.02.2014 / 19:40

1 resposta

2

de acordo com a documentação do apache :

o pedido é um dos seguintes:

Permitir, negar Primeiro, todas as diretivas Permitir são avaliadas; pelo menos um deve corresponder ou o pedido é rejeitado. Em seguida, todas as diretivas Deny são avaliadas. Se houver alguma correspondência, a solicitação será rejeitada. Por último, quaisquer solicitações que não correspondam a uma diretiva Permitir ou Negar são negadas por padrão.

Negar, permitir Primeiro, todas as diretivas do Deny são avaliadas; se houver alguma correspondência, a solicitação será negada, a menos que também corresponda a uma diretiva Allow. Quaisquer solicitações que não correspondam a nenhuma das diretivas Permitir ou Negar são permitidas.

Falha mútua Esta ordem tem o mesmo efeito que Order Allow, Deny e é preterida a seu favor.

neste caso, as diretivas Negar all são avaliadas; se houver alguma correspondência, a solicitação será negada, a menos que também corresponda a todas diretivas Permitir.

    
por 19.02.2014 / 13:51

Tags