Nginx: Limita o acesso a todos, exceto php

2

Eu quero negar o acesso a uma pasta específica (e a todos os arquivos dentro dela), mas gostaria que os arquivos php de dentro do meu servidor pudessem ter acesso a ele (e seus arquivos). É possível? É isso que estou tentando sem sucesso:

location /folder/ {
    allow 1.2.3.4;  # my server IP
    deny all;
    return 404;
}
    
por Roger 08.10.2011 / 17:36

2 respostas

0

Na realidade, isso é o que funcionou para mim:

location ~ folder/ {
            allow 1.2.3.4;  #server IP
            deny all;
    }
    
por 26.03.2012 / 01:35
1

As ACLs configuradas na configuração do nginx são para as solicitações http que serão atendidas pelo nginx. Se o PHP quiser acessar outros arquivos, ele não será restringido pela configuração do nginx. PHP, no entanto, pode ser restringido por sua própria configuração.

Como você deseja mover alguma segurança para o PHP, quero observar que o PHP pode ter acesso aos arquivos de configuração e aos semelhantes. Por isso, certifique-se de não permitir que um código como esse forneça informações úteis a um invasor:

http://my.server.acme.org/images.php?file=../../../etc/passwd
    
por 16.10.2011 / 13:04