php fopen não abre o arquivo, ele permissão para leitura não é dado ao mundo / público?

StackOverflow https://stackoverflow.com/questions/678751

  •  21-08-2019
  •  | 
  •  

Pergunta

o fopen php não abrir um arquivo para leitura, se a permissão de arquivo é 440. Eu não quero dar 444 permissão para o arquivo, para que ele não pode ser acessado diretamente através de uma URL.

Foi útil?

Solução

Você pode fazer como tj111 sugere, bloqueá-lo com .htaccess.

Mas ainda melhor idéia é colocá-lo fora da raiz www.

Por exemplo, se seus arquivos PHP estão em / home / user / public_html / , coloque seus arquivos com acesso limitado por exemplo em / home / user / inclui dando-lhes 644 (rw-r--r--). Você pode limitar as permissões do diretório para 711 (rwx--x--x), para que ninguém, mas você pode ver quais arquivos estão lá. Isso não impede que você, porém, a partir da leitura ou incluindo esses arquivos usando PHP.

Outras dicas

Assumindo que você está usando Apache com PHP, a maneira mais fácil de contornar esse problema é limitar o acesso aos arquivos usando Apache, mas permitir o acesso de leitura global. A maneira de fazer isso é manter todos os arquivos que você quer fora dos limites em seu próprio diretório, e no arquivo .htaccess colocar isso:

Order Allow , Deny
Deny from all

Agora você pode ter permissões de leitura globais, mas se você tentar acessar o arquivo diretamente da web que você vai obter um erro de permissão negada.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top