Magento ist als leistungsstarke E-Commerce-Plattform bekannt, die in PHP geschrieben ist. Dieses Webshop-System ermöglicht es dir, deinen eigenen E-Commerce- und Online-Shop in wenigen Minuten einzurichten. Für eine Installation unter Ubuntu 16.04 kann dir unser Tutorial Magento auf Ubuntu 16.04 installieren weiterhelfen. In diesem Tutorial zeige ich dir, wie du Magento 2 unter Ubuntu 18.04 LTS zum Laufen bringst.
… vor der Installation von Magento 2
Magento läuft auf einem LAMP-Stack und ist nur mit PHP 7.0 oder 7.1 kompatibel. Neben PHP zählen noch Apache und MySQL zu Komponenten des Stacks.
Bevor wir uns der Installation der oben genannten Komponenten des LAMP-Stacks widmen, solltest du auf deinem Server ein Update/Upgrade durchführen.
apt-get update && apt-get upgrade
Installiere Apache2
Mit dem unten gezeigten Kommando führst du die Installation des Apache2 Webservers durch.
apt-get install apache2
Hiernach dient dir dann noch der folgende Befehl, um die Verzeichnisliste zu deaktivieren.
sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/apache2/apache2.conf
Zum Stoppen, Starten und Aktivieren des Apache2-Dienstes nutze immer die unten aufgeführten Kommandos, um sicherzustellen, dass der Serverstart erfolgt.
systemctl stop apache2.service
systemctl start apache2.service
systemctl enable apache2.service
Installiere MariaDB und erstelle eine Datenbank mit Nutzer für Magento 2
Im Folgenden geht es daran einen Datenbankserver für deinen Webstore zu erstellen. Hierzu installierst du MariaDB.
apt-get install mariadb-server mariadb-client
Nach der Installation können immer die folgenden Befehle zum Stoppen, Starten und Aktivieren des MariaDB-Diensts verwendet werden, damit der Server beim Booten des Servers gestartet wird.
systemctl stop mariadb.service
systemctl start mariadb.service
systemctl enable mariadb.service
Zur Sicherung deines Datenbankservers führst du das unten eingeblendete Kommando aus, um den MariaDB-Server zu sichern.
mysql_secure_installation
Das oben gezeigte Kommando überführt dich in deinem Terminal in einen Nutzer-Dialog. Im folgenden Block siehst du in Magenta gehighlightet die Antworten, wie du sie auf die Neongrün gehighlighteten Fragen/EIngabeaufforderungen erwidern solltest/könntest sowie in Cyan gehighlightet die Aktion, die du hier ausführen musst.
Enter current password for root (enter for none): Betätige die Enter-Taste
Set root password? [Y/n]: Y
New password: Passwort festlegen
Re-enter new password: Passwort wiederholen
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y
Im Anschluss daran ist ein Neustart des Apache2 Webservers notwendig.
systemctl restart mariadb.service
Nun ist es daran eine Datenbank anzulegen, sowie einen Nutzer, der über diese Datenbank walten kann. Melde dich in MariaDB an.
mysql -u root -p
Nach erfolgreicher Verifizierung über das Passwort, dass du während der Sicherung deines MariaDB-Servers vergeben hast, kannst du über die MariaDB-Kommandoschnittstelle Operationen in der Datenbank und deren Elementen durchführen. In meinem Beispiel hier lege ich die Datenbank namens magentodb an
CREATE DATABASE magentodb;
sowie den Nutzer magentouser, dem ich ein Passwort (testpassword) vergebe.
CREATE USER 'magentouser'@'localhost' IDENTIFIED BY 'testpassword';
Schließlich musst du dann noch sorgen, dass der Nutzer und die Datenbank in einem Verhältnis zueinander stehen, indem du mit dem unten aufgeführten Befehl dem Nutzer alle Rechte an der Datenbank zuweist.
GRANT ALL ON magentodb.* TO 'magentouser'@'localhost' IDENTIFIED BY 'testpassword' WITH GRANT OPTION;
Lade dann noch die Berechtigungs-Tabellen neu
FLUSH PRIVILEGES;
EXIT;
Installiere PHP 7.1 und notwendige PHP-Module
Es kann sein, dass PHP 7.1 nicht in Ubuntu-Standard-Repositorys verfügbar ist. Für die Installation ist der Bezug über Drittanbieter-Repositories notwendig.
Führe die folgenden drei Befehle aus, um das Repository für Drittanbieter hinzuzufügen, das auf PHP 7.1 aktualisiert werden soll.
apt-get install software-properties-common
add-apt-repository ppa:ondrej/php
apt-get update
Hiernach musst du eine Reihe von zusätzlichen Modulen installieren.
apt-get install php7.1 php7.1-common php7.1-mbstring php7.1-xmlrpc php7.1-soap php7.1-gd php7.1-xml php7.1-intl php7.1-mysql php7.1-cli php7.1-bcmath php7.1-mcrypt php7.1-ldap php7.1-zip php7.1-curl
Installiere Magento 2
Für die Nutzung von Magento musst du über einen Nutzer-Account verfügen. Du kannst dich auf der Magento-Website für ein kostenloses Konto registrieren, solltest du noch keins besitzen. Auch für die Installation ist der Besitz eines Nutzer-Accounts notwendig, wenn du dir dir das Softwarepaket von der Magento-Website auf deinen Server holen möchtest. Auf der Tech Resources-Seite von Magento findest du alle verfügbaren Softwarepakete zum Download bereit. Du solltest dann die Community Edition aus der Full Releases-Sparte herunterladen, wie im Screenshot unten zu sehen. In meinem Beispiel ist das die Version 2.3.0. Über den Download-Button lädst du das Softwarepaket auf deinen lokalen Rechner.
Es ist aber auch möglich über GitHub das aktuellste Softwarepaket herunterzuladen. Hierzu würde dir der unten gezeigte Befehl dienen, bei dem du dann entsprechend die Versionsnummer anpassen kannst, wenn diese sich zwischenzeitlich aktualisiert haben sollte.
wget https://github.com/magento/magento2/archive/2.3.0.tar.gz
Solltest du die bisherige Anleitung, die ich dir in diesem Tutorial zur Verfügung stelle, nicht von deinem lokalen Server aus durchgeführt haben, sondern von einem externen skalierbaren Server, so wie wir von Tech4Hosting sie anbieten, dann ist es notwendig, dass du das Softwarepaket auf diesen externen Server überführst. Hierzu nutzt du einfach das unten gezeigte Kommando. In meinem Beispiel überführe ich das heruntergeladene Paket aus dem Downloadverzeichnis meines lokalen Servers in das root-Verzeichnis meines externen Servers. DeineServerIP steht hier als Platzhalter für die IP deines externen Servers. Solltest du die bisher gezeigten Schritte, die dich deinem eigenen Webshop nahe bringen, auf deinem lokalen Server ausgeführt haben, dann ignoriere den folgenden Code-Snippet.
scp /Downloads/Magento-CE-2.*.tar.gz root@DeineServerIP:~/
Fahre fort, indem du ein magento-Verzeichnis unter /var/www/html anlegst.
mkdir /var/www/html/magento/
Entpacke das Software-Paket und überführe es in das zuvor angelegte magento-Verzeichnis.
tar -zxvf VerzeichnisAufDeinemServer/Magento-CE*.tar.gz -C /var/www/html/magento/
Da ich auf meinem Server beispielhaft das Paket in das root-Verzeichnis heruntergeladen hatte, würde der oben aufgeführte Befehl so aussehen:
tar -zxvf ~/Magento-CE*.tar.gz -C /var/www/html/magento/
Modifiziere die Verzeichnisberechtigung entsprechend der Apache2-Konfiguration, indem du die unten eingeblendeten Kommandos ausführst.
chown -R www-data:www-data /var/www/html/magento
chmod -R 755 /var/www/html/magento
… nach der Installation von Magento 2
Nicht nur vor der Installation von Magento 2 waren ein paar Vorkehrungen zu treffen, sondern auch danach sind sie das. Hierauf gehe ich im Folgenden ein.
Konfiguriere Apache2 und aktiviere das Magento- & Apache2 rewrite-Modul
Erstelle eine neue Konfigurationsdatei für Magento 2. Mit dem folgenden Befehl tue ich das mit dem nano-Editor.
nano /etc/apache2/sites-available/magento.conf
Es öffnet sich hierauf eine Datei leeren Inhalts, in die du via Copy&Paste den Inhalt einbindest, den ich dir im unten aufgeführten Code-Snippet zur Verfügung stelle. example.com dient hierin als Platzhalter und musst du entsprechend mit dem Domainname deines Servers überall austauschen.
ServerAdmin [email protected]
DocumentRoot /var/www/html/magento/
ServerName example.com
ServerAlias www.example.com
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
Aktiviere Magento 2
a2ensite magento.conf
und aktiviere zudem das Apache rewrite-Modul.
a2enmod rewrite
Starte deinen Apache2 Webserver neu.
systemctl restart apache2.service
Getting started mit Magento 2
Öffne deinen Browser und rufe Magento 2 mit dem Domainname deines Servers auf. Bei erstmaligem Aufruf erscheint dir die Hauptseite des Setup-Assistenten, den du mit Betätigung des Agree and Setup Magento-Button startest.
Klicke dich im Anschluss dann vai dem Next-Button weiter durch den Setup-Assistenten.
Nachdem deine PHP-Version und das Vorhandensein zusätzlich erforderlicher PHP-Module erfolgreich gecheckt wurden, gelangst du zu Formularfeldern, in denen du die Daten zu deiner für die Nutzung von Magento erstellten Datenbank eintragen musst und dich mit dem Next-Button zum nächsten Setup-Schritt bewegst.
Nun geht es um die Web-Konfiguration. Hier musst du deinen Domainname in das Feld hinter https:// setzen. Des Weiteren stehen dir unter den aufklappbaren Advanced Options ein paar Möglichkeiten zur Verfügung deinen Webstore zu konfigurieren. Klicke auf den Next-Button, um im Setup-Assistenten fortzufahren.
Als nächstes definierst du in den Formularfeldern des folgenden Schrittes die Zeitzone, Währung und Sprache deines Webshops. Auch hier stehen dir wieder Modulierungsoptionen für deine E-Commerce-Plattform unter den aufklappbaren Advanced Modules Configurations zur Verfügung.
Im darauf folgenden Schritt legst du einen Admin-Account für den Zugang zu deinen Webshop an und bestätigst die Übernahme deiner Daten mit Betätigung des Next-Buttons.
Wenn du dann auch diese eingaben mit dem Next-Button bestätigt hast, dann erreichst du auf die Seite des Setup-Assistenten, wo du die Installation mit dem Install Now-Button einleiten kannst. Nach Betätigung des Buttons ist es dir nicht mehr möglich im Setup-Assistenten via Back-Button Daten zu ändern.
Sobald der Fortschrittsbalken der Installation durchlaufen ist, gelangst du auf eine Seite, auf der du die erfolgreiche Installation inklusive der Daten zur Erreichbarkeit (URL) deines Webshops und der Anmeldung in diesem bestätigt auffindest.
Via dem Launch Magento Admin-Button gelangst du dann auf die Anmeldeseite, wo du den von dir festgelegten Benutzernamen in Kombination mit dem Passwort eintragen und verifizieren lassen kannst.
Ist die Anmeldung verifiziert, solltest du das Dashboard deiner E-Commerce-Plattform sehen.
Fazit
„Gut gelungen“ – würde ich sagen! Jetzt geht es auf, spannende Webshop-Projekte mit deinem eigenen Shopsystem von Magento 2 zu realisieren. Ich wünsche dir viel Erfolg und vor allem auch Spaß dabei! ?
#info {
position: relative;
padding: 15px;
margin: 1em 0 3em;
color: #39ff14;
background-color: #123850;
border-radius: 10px;
background: linear-gradient(top, #f9d835, #f3961c);
}Zurück zur Tutorial Übersicht Back to Tutorial Overview