Um servidor é apenas um nome para um computador cujo objetivo é fornecer dados para outras máquinas. O servidor para um site com conteúdo PHP , por exemplo, é um computador que envia os dados do site para computadores que visitam o site. Sistemas operacionais de servidor são como qualquer outro sistema, incluindo as permissões de arquivos de usuário. Isso pode levar a erros de "Permission Denied " quando um script PHP tenta acessar um arquivo com " get_file_contents ()" ou qualquer outro método que lê os dados do arquivo . Usuários do Sistema
Todos os sistemas operacionais modernos têm uma arquitetura de múltiplos usuários . Isso protege um usuário de ter outro acesso do usuário seus arquivos e também faz com que o sistema operacional mais seguro. Ao restringir determinadas tarefas para uma conta de administrador , vírus que um usuário casual pode baixar ter um tempo mais difícil ganhar o controle do sistema. As máquinas que hospedam sites com sistemas operacionais de uso de conteúdo PHP que são otimizados para atuar como servidores e ainda restringir usuários de acessar arquivos para os quais eles não têm permissão para abrir .
A arte PHP Interpreter
PHP é uma linguagem interpretada , o que significa que um servidor compila seu código-fonte em tempo real, como um usuário acessa um arquivo com código fonte PHP. Esta compilação em tempo real é feito pelo interpretador PHP . O intérprete age como qualquer outra peça de software no servidor , a execução sob um determinado usuário do sistema com permissões de sistema do usuário. Este fato pode levar a mensagens de "Permission Denied " quando um script PHP tenta acessar conteúdo de um arquivo particular.
Proxy Software
visitantes para um site não interagem diretamente com os arquivos de código- fonte em seu servidor. Pelo contrário, os pedidos são processados pelo software de servidor proxy. Este software tem pedidos de dados, como uma página da Web especial , dos usuários. Em seguida, ele recupera os dados que solicitou do servidor, em seguida, passa -lo de volta para o usuário. Quando os administradores do servidor configurar o software proxy, ele executa como parte da conta de um usuário específico . Software proxy para sites PHP vai envolver o interpretador PHP para executar código PHP, então o interpretador PHP estará trabalhando com a mesma conta de usuário que está executando o software de proxy.
Permissions
Se um script PHP tenta acessar um arquivo para o qual a conta de usuário que está executando o software de proxy não possuir, ou não tem permissão para abrir , então o PHP irá retornar uma mensagem de erro "Permission Denied " . Os desenvolvedores da Web podem corrigir este erro , alterando a propriedade do arquivo para a conta que executa o software de proxy. Eles também poderiam criar um novo grupo de usuários que inclui tanto a conta que é dono do arquivo e a conta que executa o software de proxy, em seguida, defina o arquivo de deixar qualquer um nesse grupo a abrir. Qualquer método irá resolver o problema.