Instalação do Magento: Obtendo erro fatal


7

Estou enfrentando um problema ao tentar instalar o magento. Estou recebendo os seguintes erros. Por favor, alguém pode me ajudar ...!

OS: Ubuntu 16.0.4
apache: 2.4.18
php:
7.0.8 mariaDB: 10.1.16

Fatal error: Uncaught Magento\Framework\Exception\FileSystemException: The file "/opt/lampp/htdocs/magento/var/.regenerate" cannot be deleted Warning!unlink(/opt/lampp/htdocs/magento/var/.regenerate): Permission denied in /opt/lampp/htdocs/magento/vendor/magento/framework/Filesystem/Driver/File.php:382 Stack trace: #0 /opt/lampp/htdocs/magento/vendor/magento/framework/Filesystem/Directory/Write.php(173): Magento\Framework\Filesystem\Driver\File->deleteFile('/opt/lampp/htdo...')
#1 /opt/lampp/htdocs/magento/vendor/magento/framework/Code/GeneratedFiles.php(98): Magento\Framework\Filesystem\Directory\Write->delete('/var/.regenerat...')
#2 /opt/lampp/htdocs/magento/vendor/magento/framework/App/ObjectManagerFactory.php(114): Magento\Framework\Code\GeneratedFiles->cleanGeneratedFiles() #3 /opt/lampp/htdocs/magento/vendor/magento/framework/App/Bootstrap.php(385): Magento\Framework\App\ObjectManagerFactory->create(Array) #4 /opt/lampp/htdocs/magento/vendor/magento/framework/App/Bootstrap.php(362): Magento\Framework\App\Bootstrap- in /opt/lampp/htdocs/magento/vendor/magento/framework/Filesystem/Driver/File.php on line 382


Eu também estou enfrentando o mesmo problema. Por favor me ajude.
Mousam Roy

Respostas:


12

Sua varpasta não tem as permissões corretas.

Sugiro que você siga a documentação oficial para definir as permissões corretas na sua instância do Magento: http://devdocs.magento.com/guides/v2.0/install-gde/prereq/file-system-perms.html

cd <your Magento install dir>
find var vendor pub/static pub/media app/etc -type f -exec chmod u+w {} \;
find var vendor pub/static pub/media app/etc -type d -exec chmod u+w {} \;
chmod u+x bin/magento

@ venky07 Isso é muito bonito porque o seu usuário do servidor é diferente da propriedade de seus arquivos eu acho
Raphael em Digital pianismo

Então, como posso resolver esse ...!
venky07


1
isso não funciona #
Alston

4

Você pode resolver isso facilmente, acessando a raiz do documento via terminal e fornecendo permissão para a pasta var desta maneira:

chmod -R 777 var

Então tente atualizar e o modo de instalação será mostrado com certeza.


1
Isso não é seguro?
Brent

sem problemas, o magento 2 exige isso.
precisa saber é o seguinte

4
Para quem vem aqui, não execute este comando, especialmente em um ambiente de produção. A resposta aceita funciona muito bem.
Dave

Questionador não mencionou se está em prod ou dev.
Shyam Krishna Sreekumar

veja também: devdocs.magento.com/guides/v2.0/config-guide/prod/… veja o que todas as pastas precisam ser graváveis ​​no modo dev. espero que isto ajude.
Shyam Krishna Sreekumar

1

Se alguém estiver enfrentando os mesmos problemas de permissão (por exemplo, /var/.regeneratenão pode ser excluído, nos logs httpd)

E nenhuma das opções abaixo funciona:

  1. chmod -R 777 var
  2. usuário do servidor corresponde à propriedade dos seus arquivos
  3. open_basedir está desativado ou definido corretamente php.ini

Tente verificar se sua instalação do Centos 7 tem o SELinux instalado: sestatus

Se estiver, desative-o: setenforce 0


Embora não seja o ideal, setenforce 0fiz o truque para mim. Eu ficaria longe de definir 777 em qualquer arquivo.
vahissan 13/02/19

concordo absolutamente. pode ser útil durante a configuração inicial e, se o 777 estiver definido, você ainda receberá erros de permissão do que é definitivamente outra coisa. Além disso, setenforce 0desativa temporariamente o SELinux. Você precisaria editar /etc/selinux/configpara desativá-lo permanentemente ou para definir a política correta.
13769 Mike

0

Enfrento quase o mesmo problema. Em vez de pesquisar aleatoriamente na Internet aleatoriamente, vá no arquivo de log do apache2, no meu caso, meu arquivo de log localizado em

/ var / apache2 / log

então você encontrará o problema exato lá.

para o meu caso, encontrei o seguinte erro.

[Sat Nov 15: 48: 36.673289 2018] [: error] [pid 2153] [client 127.0.0.1:40744] Erro fatal do PHP: Uncaught RuntimeException: não é possível criar o diretório / var / www / html / M2 / MN226 / erro de geração gerado / código / Magento / Framework / App / ResourceConnection /. \ nClass Magento \ Framework \ App \ ResourceConnection \ Proxy: A classe solicitada não foi gerada corretamente, porque a permissão do diretório 'gerado' é somente leitura. Se - depois de executar o comando da CLI 'bin / magento setup: di: compile' quando a permissão do diretório 'gerado' estiver configurada para escrever - a classe solicitada não foi gerada corretamente, você deve adicionar o objeto de classe gerado à assinatura do método de construção relacionado, apenas. em /var/www/html/M2/MN226/vendor/magento/framework/Code/Generator.php:135\n Rastreamento de pilha:http: // localhost / M2 /

meu diretório de instalação é var / www / html / M2 / MN226 /

Nesse diretório, você pode encontrar uma chamada de pasta gerada.

verifique a permissão de que, se não for dado 777

então dê isso 777

então tudo funciona corretamente.

insira a descrição da imagem aqui

Nota: eu apenas compartilho minha experiência, ela pode ajudá-lo ou não, pois a situação de todos pode não ser a mesma. Se funcionar, tudo bem, se não, então ignore-o. Eu deixo branco:

https://forum.equaltrue.com/topics/showing-blank-page- while-installing-magento-2-2-6/


0

A solução de Raphael no Digital Pianism não estava resolvendo para mim, eu tive que executar este comando, que são três comandos encadeados:

find var generated vendor pub/static pub/media app/etc -type f -exec chmod g+w {} + && find var generated vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} + && chmod g+x bin/magento
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.