So installieren Sie Magento 2 auf Localhost
Veröffentlicht: 2021-04-12Inhaltsverzeichnis
Aktualisiert am 13. April 2021 : Benutzer können beim Versuch, Magento 2.4.2 zu installieren, auf einen 404 Not Found- Fehler stoßen. Befolgen Sie die vorgeschlagene Lösung im Artikel, um das beste Ergebnis zu erzielen.
Es ist ziemlich lange her, dass Magento seine Version 2.0 vorgestellt hat. Mit einer benutzerfreundlicheren Benutzeroberfläche und verbesserter Leistung ist es wahrscheinlich, dass viele bestehende Magento 1-Benutzer früher oder später zu Magento 2 wechseln werden. Im Einklang mit dem Trend veröffentlichte SimiCart im Dezember 2016 auch die mobile Magento 2-App.
Heute zeigen wir Ihnen, wie Sie Magento 2.4 lokal unter Windows mit dem XAMPP-Server installieren. Dieses Tutorial richtet sich an aktuelle Magento 2-Benutzer und auch an Benutzer, die neu bei Magento sind. Jetzt fangen wir an!
Teil 1: XAMPP installieren und konfigurieren
Schritt 1 : Laden Sie XAMPP herunter
Download-Link: https://www.apachefriends.org/download.html
Wir empfehlen die Installation von XAMPP mit der PHP-Version 7.4.x, die von Magento für M2.4 empfohlen wird. Auch laut Magento können Sie Magento 2.4 mit PHP 7.3 installieren, aber es ist nicht getestet oder empfohlen.
Schritt 2 : Installieren Sie XAMPP
Doppelklicken Sie nach dem Herunterladen von XAMPP auf die Datei, um sie auf Ihrem Computer zu installieren.
Klicken Sie auf Weiter .
Belassen Sie die Standardauswahl wie im Bild. Klicken Sie auf Weiter .
Wählen Sie Ihren Installationsordner. Der Standardspeicherort ist C:\xampp . Klicken Sie danach auf Weiter .
Klicken Sie auf Weiter .
Klicken Sie auf Weiter .
Das Setup installiert nun xampp auf Ihrem Computer. Bitte warte eine Weile.
Nachdem die Einrichtung abgeschlossen ist, sehen Sie die Option „Möchten Sie die Systemsteuerung jetzt starten?“. Lassen Sie es ausgewählt. Klicken Sie auf Fertig stellen , um das Setup zu beenden und die XAMPP-Systemsteuerung aufzurufen.
Schritt 3 : Konfigurieren Sie XAMPP
Klicken Sie in der XAMPP-Systemsteuerung auf die Schaltfläche „ Config “ in der Zeile „Apache“ und dann auf „ PHP (php.ini) “.
Suchen Sie in der Datei php.ini
diese Zeilen und entfernen Sie ;
vor jeder Zeile:
;extension=intl ;Erweiterung=Seife ;Erweiterung=Sockets ;Erweiterung=Natrium ;extension=xsl
Erweitern memory_limit
auf 4G:
memory_limit=4G
Wenn Sie fertig sind, speichern und schließen Sie die Datei. Klicken Sie dann auf die Schaltfläche Start in den zwei Zeilen Apache und MySQL, um sie zu starten. Beenden Sie XAMPP nach diesem Schritt nicht, lassen Sie es einfach laufen.
Schritt 4 : Konfigurieren Sie die Hosts -Datei
Öffnen C:\Windows\System32\drivers\etc\hosts
. Fügen Sie in der letzten Zeile die folgende Zeile hinzu:
127.0.0.1 www.localhost.com
Schritt 5 : Erstellen Sie eine Datenbank
Durchsuchen Sie die URL http://localhost/phpmyadmin/
, um auf die Seite phpMyAdmin zuzugreifen. Geben Sie einen Datenbanknamen ein (z. B. „Magento2“) und klicken Sie auf Erstellen .
Notieren Sie sich Ihren Datenbanknamen, da Sie später Magento darauf installieren möchten (mit dem root
Benutzer).
Teil 2: Installieren Sie Elasticsearch
Ab Version 2.4 benötigt Magento Elasticsearch als Katalogsuchmaschine.
Laden Sie Elasticsearch 7.6.0 herunter: https://www.elastic.co/downloads/past-releases/elasticsearch-7-6-0 (Magento 2.4.x wurde nur mit Elasticsearch 7.6.x getestet. Sie können andere 7.x verwenden Versionen nach eigenem Ermessen, aber wir empfehlen die Verwendung der getesteten Version von Elasticsearch.)
Extrahieren Sie die gerade heruntergeladene .zip-Datei. cd
in einem Terminalfenster in das extrahierte Verzeichnis und führen Sie diesen Befehl aus:
.\bin\elasticsearch.bat
Wenn die Installation abgeschlossen ist, können Sie unter http://localhost:9200
überprüfen, ob Elasticsearch ordnungsgemäß installiert ist, was in etwa so aussehen sollte:
{ "Name": "Cp8oag6", "cluster_name": "elastische Suche", "cluster_uuid": "AT69_T_DTp-1qgIJlatQqA", "Ausführung" : { "Nummer": "7.6.0", "build_flavor": "Standard", "build_type": "tar", "build_hash": "f27399d", "build_date": "2016-03-30T09:51:41.449Z", "build_snapshot": falsch, "lucene_version": "8.7.0", "Mindestversion_der_Kabelkompatibilität": "1.2.3", „minimale_index_kompatibilitätsversion“ : „1.2.3“ }, "Tagline": "Du weißt schon, für die Suche" }
Teil 3: Laden Sie Magento mit Composer herunter
Da einige der Plugins von Magento 2 nicht mit Composer 2.x funktionieren, sollten Sie eine stabile Version von Composer 1.x verwenden, um Magento herunterzuladen. Dazu installieren Sie am besten die Composer-Setup.exe.
Dieses Setup installiert die neueste Composer-Version und richtet PATH-Umgebungsvariablen ein, sodass Sie Composer bequem von jedem Verzeichnis aus aufrufen können. Nachdem Sie die Installation von Composer abgeschlossen haben, müssen Sie mithilfe von composer self-update --1
auf eine frühere 1.x-Version herunterstufen, um die beste Kompatibilität sicherzustellen.
Wechseln Sie als Nächstes zu C:\ cd
C:\xampp\htdocs
und führen Sie den folgenden Befehl aus:
Composer create-project --repository-url=https://repo.magento.com/magento/project-community-edition=2.4.2 <install-directory-name>
Es sollte eine Weile dauern, bis der Composer alle erforderlichen Module heruntergeladen und installiert hat. Wenn alles fertig ist, sollten Sie Folgendes sehen:
Teil 4: Installieren Sie Magento über die Befehlszeile
Ab Magento 2.4 ist die Befehlszeilenschnittstelle die standardmäßige (und einzige) Installationsmethode für Magento.
Während der Installation von Magento 2.4 können einige Fehler auftreten. Um solche Fehler zu vermeiden, müssen Sie zunächst einige Änderungen an den Magento-Dateien vornehmen.
So verhindern Sie diesen Fehler:
Suchen Sie die Funktion validateURLScheme
in \vendor\magento\framework\Image\Adapter\Gd2.php
und ersetzen Sie sie durch:
private Funktion validateURLScheme(string $filename) : bool { $allowed_schemes = ['ftp', 'ftps', 'http', 'https']; $url = parse_url($Dateiname); if ($url && isset($url['scheme']) && !in_array($url['scheme'], $allowed_schemes) && !file_exists($filename)) { falsch zurückgeben; } gib true zurück; }
Als nächstes cd
in Ihr Magento-Verzeichnis und führen Sie diesen Befehl aus:
php bin/magento setup:install --base-url=http://localhost/magento24/ --db-host=localhost --db-name=yourdbname --db-user=yourdbuser --db-password=yourdbpassword - -admin-firstname=admin --admin-lastname=admin [email protected] --admin-user=admin --admin-password=admin123 --language=en_US --currency=USD -- timezone=Amerika/Chicago --use-rewrites=1 --backend-frontname=admin --search-engine=elasticsearch7 --elasticsearch-host=localhost --elasticsearch-port=9200
Beschreibungen :
-
base-url
: Der Pfad, in dem sich Ihr Magento-Verzeichnis befindet, das dem folgenden Format folgt: http[s]://<Host oder IP>/<Ihr Magento-Installationsverzeichnis>/
-
db-host
: der Hostname oder die IP-Adresse Ihres Hosts -
db-name
: Ändern Sie ihn in den Namen der Magento-Datenbank, die Sie gerade erstellt haben -
db-user
: ein Datenbankbenutzer mit voller Berechtigung. Wir verwenden den Standard-Root-Benutzer. -
db-password
: das Passwort Ihres Datenbankbenutzers. Lassen Sie es leer, wenn Sie den Datenbankbenutzer „root“ verwenden -
admin-firstname
: Ihr Vorname -
admin-lastname
: Ihr Nachname -
admin-email
: Ihre E-Mail-Adresse -
admin-user
: der Benutzername, mit dem Sie sich beim Admin-Panel anmelden -
admin-password
: das Passwort, mit dem Sie sich beim Admin-Panel anmelden -
language
: die Sprache, die Sie in Ihrem Admin-Panel und Ihrer Storefront verwenden werden. Verwenden Sie einen Sprachcode wieen_US
. -
admin-email
: ändern Sie es in Ihre E-Mail -
currency
: Legen Sie die Standardwährung fest, die in Ihrer Storefront verwendet werden soll. Geben Siephp bin/magento info:currency:list
ein, um eine Liste der unterstützten Währungen zusammen mit ihren Codes anzuzeigen -
timezone
: Wechseln Sie in die Zeitzone, in der Sie sich befinden. Sehen Sie sich die Liste der unterstützten Zeitzonen an, um eine bessere Vorstellung davon zu erhalten, was Sie ausfüllen müssen. -
url-rewrites
: auf 1 setzen, um Webserver-Umschreibungen zu aktivieren. Dies wird bei Ihrem Website-Ranking helfen. -
backend-frontname
: Legen Sie Ihre Admin-URL fest. Das Weglassen dieses Parameters führt zu einer zufällig generierten URL für Ihren Magento-Admin-Pfad (z. B. admin_jkhgdfq). -
search-engine
: Legen Sie die Version von Elasticsearch fest, die Sie für diese Magento-Installation verwenden möchten. Der Standardwert ist elasticsearch7 -
elasticsearch-host
: der Hostname oder die IP-Adresse, auf der Elasticsearch ausgeführt wird. Der Standardwert ist localhost -
elasticsearch-port
: die Portnummer, die Elasticsearch überwacht. Der Standardwert ist 9200
Weitere konfigurierbare Optionen finden Sie im offiziellen Leitfaden von Magento.
Nach erfolgreicher Installation sehen Sie diese Meldung:
Überprüfung der Dateiberechtigungen nach der Installation… Entfernen Sie aus Sicherheitsgründen die Schreibrechte von diesen Verzeichnissen: 'C:/xampp/htdocs/magento24/app/etc' [Fortschritt: 1270 / 1270] [ERFOLG]: Magento-Installation abgeschlossen. [ERFOLG]: Admin-Panel-URI: /admin Nichts zu importieren.
Danach müssen wir einige zusätzliche Anpassungen vornehmen, damit Magento mit Windows funktioniert, wie folgt:
Ersetzen Sie in app\etc\di.xml
Symlink
durch Copy
<virtualType name="developerMaterialization" type="Magento\Framework\App\View\Asset\MaterializationStrategy\Factory"> <Argumente> <argument name="strategiesList" xsi:type="array"> <item name="view_preprocessed" xsi:type="object">Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink</item> <item name="default" xsi:type="object">Magento\Framework\App\View\Asset\MaterializationStrategy\Copy</item> </Argument> </argumente> </virtuellerTyp>
Ersetzen Sie in der vendor\magento\framework\View\Element\Template\File\Validator.php
die Zeile 138 durch:
$realPath = str_replace('\\', '/',$this->fileDriver->getRealPath($path));
Führen Sie abschließend diese Befehle aus:
php bin/magento indexer:reindex php bin/magento setup:upgrade php bin/magento setup:static-content:deploy -f php bin/magento cache:flush
Zusätzliche Optimierungen für Magento 2.4.2 und höher
Ab Magento 2.4.2 ist es nun obligatorisch, Inhalte aus dem Ordner /pub/
bereitzustellen, um eine bessere Sicherheit zu gewährleisten. Aus diesem Grund sind zusätzliche Optimierungen erforderlich, damit Ihre Magento 2.4.2-Version ordnungsgemäß funktioniert.
Schritt 1 : Kopieren Sie die index.php
und .htaccess
-Dateien von /pub/
in Ihren Stammordner.
Schritt 2 : Suchen Sie die folgende Zeile in der index.php
(im Stammordner):
erfordern __DIR__ . '/../app/bootstrap.php';
und ersetzen Sie es durch
erfordern __DIR__ . '/app/bootstrap.php';
Schritt 3 : Gehen Sie zu der kürzlich erstellten Magento 2-Datenbank (in http://localhost/phpmyadmin
) und suchen Sie die Tabelle core_config_data
mit dieser SQL-Abfrage:
SELECT * FROM core_config_data
In diese Tabelle möchten Sie diese Zeilen einfügen in:
Weg | Wert |
web/secure/base_static_url | http://localhost/magento24/pub/static/ |
web/unsecure/base_static_url | http://localhost/magento24/pub/static/ |
web/secure/base_media_url | http://localhost/magento24/pub/media/ |
web/unsecure/base_media_url | http://localhost/magento24/pub/media/ |
magento24
durch Ihr Magento-Installationsverzeichnis- Zeilen manuell einfügen:
- Zeilen mit SQL-Abfragen einfügen:
INSERT INTO `core_config_data` (`config_id`, `scope`, `scope_id`, `path`, `value`, `updated_at`) WERTE (NULL, 'default', '0', 'web/secure/base_static_url', 'http://localhost/magento24/pub/static/', aktueller_Zeitstempel()); INSERT INTO `core_config_data` (`config_id`, `scope`, `scope_id`, `path`, `value`, `updated_at`) WERTE (NULL, 'default', '0', 'web/unsecure/base_static_url', 'http://localhost/magento24/pub/static/', aktueller_Zeitstempel()); INSERT INTO `core_config_data` (`config_id`, `scope`, `scope_id`, `path`, `value`, `updated_at`) WERTE (NULL, 'default', '0', 'web/secure/base_media_url', 'http://localhost/magento24/pub/media/', aktueller_Zeitstempel()); INSERT INTO `core_config_data` (`config_id`, `scope`, `scope_id`, `path`, `value`, `updated_at`) WERTE (NULL, 'default', '0', 'web/unsecure/base_media_url', 'http://localhost/magento24/pub/media/', aktueller_Zeitstempel());
Ihre neu hinzugefügten Zeilen sollten in etwa so aussehen:
Löschen Sie jetzt den Cache mit:
php bin/magento cache:flush
Und aktualisieren Sie Ihr Frontend. Sie sollten jetzt eine leere Seite wie diese sehen können, wenn Sie über die konfigurierte base-url
auf Ihr Frontend zugreifen:
Jetzt können Sie mit Ihrer konfigurierten base-url
auf Ihr Magento-Frontend zugreifen. Beispielsweise greifen wir mit unserer Magento 2.4.2-Installation auf unsere neue Magento-Site unter http://localhost/magento24/
und auf unser Backend unter http://localhost/magento24/admin
.
*Hinweis: Wenn dieser Fehler auftritt, wenn Sie versuchen, sich bei Ihrem Magento-Admin-Konto anzumelden: „Sie müssen die Zwei-Faktor-Autorisierung konfigurieren…“
Versuchen Sie, diesen Befehl auszuführen:
php bin/magento-Modul: Magento_TwoFactorAuth deaktivieren
Teil 5: Beispieldaten importieren (optional)
Führen Sie diesen Befehl aus, um Beispieldaten zu importieren:
php bin/magento sampledata:bereitstellen
Geben Sie bei Aufforderung Ihre Magento-Authentifizierungsschlüssel ein. Öffentliche und private Schlüssel werden in Ihrem Magento Marketplace-Konto erstellt und konfiguriert.
Führen Sie nach Abschluss des Datenimports Folgendes aus:
php bin/magento setup:upgrade php bin/magento setup:static-content:deploy -f php bin/magento cache:clean
Aktualisieren Sie jetzt das Frontend und Sie sollten den Standard-Magento-Shop mit Luma-Design und Beispieldaten sehen können.
Das ist es! Sie haben die Installation von Magento 2 auf Ihrem Localhost abgeschlossen. Jetzt können Sie auf Ihr Magento 2-Frontend/Backend zugreifen und mit der Erkundung der Magento 2-Funktionen beginnen. Wir hoffen, Sie finden diesen Beitrag hilfreich!
Weiterführende Lektüre