Magento-Installation: Schwerwiegender Fehler

7

Beim Versuch, Magento zu installieren, tritt ein Problem auf. Ich erhalte die folgenden Fehler. PLZ kann mir jemand helfen ...!

Betriebssystem: 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
venky07
quelle
Bitte überprüfen Sie die Erlaubnis: devdocs.magento.com/guides/v2.0/config-guide/prod/…
Khoa TruongDinh
Ich stehe auch vor dem gleichen Problem. Bitte hilf mir.
Mousam Roy

Antworten:

12

Ihr varOrdner verfügt nicht über die richtigen Berechtigungen.

Ich schlage vor, dass Sie die offizielle Dokumentation befolgen, um die richtigen Berechtigungen für Ihre Magento-Instanz festzulegen: 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
Raphael beim digitalen Pianismus
quelle
@ venky07 das ist so ziemlich, weil Ihr Server-Benutzer sich vom Besitz Ihrer Dateien unterscheidet,
denke
Wie kann ich das dann lösen ...!
venky07
@ venky07 versuchen Sie, umask: devdocs.magento.com/guides/v2.0/install-gde/install/…
Raphael bei Digital Pianism
1
es funktioniert nicht
Alston
4

Sie können dies einfach lösen, indem Sie über das Terminal zum Dokumentstamm wechseln und die Berechtigung für den var-Ordner wie folgt erteilen:

chmod -R 777 var

Dann versuchen Sie bitte eine Aktualisierung und der Installationsmodus wird sicher angezeigt.

Shyam Krishna Sreekumar
quelle
1
Ist das nicht unsicher?
Brent
Kein Problem, Magento 2 verlangt es.
Shyam Krishna Sreekumar
4
Wenn Sie hierher kommen, führen Sie diesen Befehl nicht aus, insbesondere nicht in einer Produktionsumgebung. Die akzeptierte Antwort funktioniert einwandfrei.
Dave
Der Fragesteller erwähnte nicht, ob es in Prod oder Dev ist.
Shyam Krishna Sreekumar
Weitere Informationen finden Sie unter devdocs.magento.com/guides/v2.0/config-guide/prod/…. Sehen Sie, welche Ordner im dev-Modus beschreibbar sein müssen. hoffe das hilft.
Shyam Krishna Sreekumar
1

Wenn jemand mit denselben Berechtigungsproblemen konfrontiert ist (dh /var/.regeneratekann nicht gelöscht werden, in den httpd-Protokollen)

Und keines der folgenden funktioniert:

  1. chmod -R 777 var
  2. Serverbenutzer stimmen mit dem Besitz Ihrer Dateien überein
  3. open_basedir ist deaktiviert oder richtig eingestellt php.ini

Versuchen Sie zu überprüfen, ob auf Ihrer Centos 7-Installation SELinux installiert ist: sestatus

Wenn dies der Fall ist, deaktivieren Sie es: setenforce 0

Mike
quelle
Obwohl nicht ideal, setenforce 0hat der Trick für mich getan. Ich würde mich davon fernhalten, 777 für eine Datei festzulegen.
Vahissan
absolute Zustimmung. Es kann während der Ersteinrichtung nützlich sein, und wenn Sie mit 777 immer noch Berechtigungsfehler erhalten, ist es definitiv etwas anderes. setenforce 0Deaktiviert außerdem vorübergehend SELinux. Sie müssen bearbeiten /etc/selinux/config, um es dauerhaft zu deaktivieren oder die richtige Richtlinie festzulegen.
Mike
0

Ich stehe fast vor dem gleichen Problem. Anstatt zufällig im Internet nach dem Zufallsprinzip zu suchen, gehen Sie in die Protokolldatei von apache2, in meinem Fall in meine Protokolldatei

/ var / apache2 / log

dann finden Sie dort genaues Problem.

Für meinen Fall habe ich folgenden Fehler gefunden.

[Sat Nov 10 15: 48: 36.673289 2018] [: error] [pid 2153] [client 127.0.0.1:40744] Schwerwiegender PHP-Fehler: Nicht erfasste RuntimeException: Verzeichnis / var / www / html / M2 / MN226 / kann nicht erstellt werden Erzeugter / Code / Magento / Framework / App / ResourceConnection /. \ nKlassenfehler Magento \ Framework \ App \ ResourceConnection \ Proxy-Generierung: Die angeforderte Klasse wurde nicht ordnungsgemäß generiert, da die 'generierte' Verzeichnisberechtigung schreibgeschützt ist. Wenn - nach dem Ausführen des CLI-Befehls 'bin / magento setup: di: compile', wenn die Berechtigung 'generiertes' Verzeichnis zum Schreiben festgelegt ist - die angeforderte Klasse nicht ordnungsgemäß generiert wurde, müssen Sie das generierte Klassenobjekt zur Signatur des hinzufügen nur verwandte Konstruktmethode. in /var/www/html/M2/MN226/vendor/magento/framework/Code/Generator.php:135\nStack trace:http: // localhost / M2 /

Mein Installationsverzeichnis ist var / www / html / M2 / MN226 /

In diesem Verzeichnis finden Sie dann einen generierten Ordneraufruf.

Überprüfen Sie die Erlaubnis dazu, wenn nicht 777 gegeben

dann gib das 777

dann funktioniert alles richtig

Geben Sie hier die Bildbeschreibung ein

Hinweis: Ich teile nur meine Erfahrungen, es kann Ihnen helfen oder nicht, da möglicherweise nicht alle Situationen gleich sind. Wenn es funktioniert, dann okay, wenn nein, dann ignoriere es. Ich weiß es auf:

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

Shuvankar Paul
quelle
0

Die Lösung von Raphael bei Digital Pianism löste sie nicht für mich. Ich musste diesen Befehl ausführen, bei dem es sich um drei miteinander verkettete Befehle handelt:

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
Schwarz
quelle