Exceção de Laravel O fluxo ou arquivo não pôde ser aberto não foi aberto a permissão do fluxo negado
- 2595
- 710
- Spencer Emard
Erro:
Um dos meus aplicativos Laravel começou a mostrar o seguinte erro depois que eu reiniciei a instância. A mensagem de erro é:
O fluxo ou arquivo “/var/www/html/armazenamento/logs/laravel.Log ”não pôde ser aberto: Falha ao abrir o fluxo: permissão negada
Solução:
Esta mensagem de erro indica que o processo PHP que está tentando escrever no arquivo de log não tem permissões suficientes para fazê -lo. Existem algumas coisas que você pode tentar corrigir este problema:
- Verifique a propriedade e as permissões do arquivo de log e seus diretórios pais. O processo PHP deve ter lido e gravação permissões no arquivo e em seus diretórios pais. Você pode usar o
'ls -l'
comando para verificar a propriedade e as permissões do arquivo e Chmod e Chown para modificá -las, se necessário.chmod -r 777/var/www/html/armazenamento
- Verifique se o processo PHP está em execução como o usuário correto. Se o processo PHP estiver em execução como um usuário diferente do proprietário do arquivo de log, pode não ter permissões suficientes para gravar no arquivo. Você pode verificar com o usuário se o processo PHP está em execução usando o comando ps.
- Verifique o log de erros do PHP para obter mais informações. O log de erros do PHP pode conter informações mais detalhadas sobre o erro, incluindo a linha exata de código que causou o problema. A localização do log de erro PHP geralmente é especificada no PHP.arquivo de configuração ini.
- Verifique se o arquivo de log existe e é gravável pelo processo PHP. Se o arquivo de log não existir, o processo PHP não poderá escrever para ele. Você pode criar o arquivo de log e definir as permissões corretas usando o
'tocar'
e'chmod'
comandos.touch/var/www/html/armazenamento/logs/laravel.registro
chmod 777/var/www/html/armazenamento/logs/laravel.registro
- Os usuários do CentOS e outros do sistema Redhat podem ter o Selinux habilitado. Você pode definir o adequado Selinux Política para o
'armazenar'
diretório com o seguinte comando.chcon -r -t httpd_sys_rw_content_t/var/www/html/armazenamento
- Os seguintes comandos ajudarão você a criar todos os diretórios relacionados ao armazenamento necessários.
mkdir -p/path/to/laravel/storage/app, estrutura, logs
mkdir -p/path/to/laravel/storage/estrutura/cache, sessões, vistas
Em seguida, Chnage o proprietário do Directoires e atribua todos os privilégios a todos:
CHMOD -R 777/PATH/TO/Laravel/Storage/
CHOWN -R WWW-DATA: www-data/path/to/laravel/storage/
Certifique -se de mudar
'/PATH/TO/Laravel'
com seu diretório de aplicativos Laravel.
Espero que estas sugestões ajudem. Deixe -me saber se você tiver alguma dúvida ou se precisar de mais assistência.
- « Como definir o tempo limite da sessão no PHP Um guia para iniciantes
- Como cortar, copiar e colar em vim »