Exceção de Laravel O fluxo ou arquivo não pôde ser aberto não foi aberto a permissão do fluxo negado

Exceção de Laravel O fluxo ou arquivo não pôde ser aberto não foi aberto a permissão do fluxo negado

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:

  1. 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  
  2. 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.
  3. 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.
  4. 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  
  5. 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  
  6. 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.