Magento auf Ubuntu 15.04 mit LAMP-Stack installieren
Magento ist eine kostenfreie und quelloffene E-Commerce-Plattform, die von eBay entwickelt wurde. In der Regel läuft sie auf einem LAMP-Stack und ist mit den meisten Linux-Distributionen kompatibel. Diese Anleitung zeigt dir Schritt für Schritt, wie du Magento auf Ubuntu 15.04 installierst – wobei sich die Schritte auch auf andere Ubuntu-Versionen übertragen lassen.
Beachte, dass Magento sehr viele Systemressourcen benötigt. Für Testzwecke sind mindestens 512 MB RAM für PHP erforderlich. Für kleinere Shops wird mindestens 1 GB empfohlen, während größere Shops mit mehreren hundert Produkten idealerweise 4 GB RAM benötigen.
Die Anleitung geht davon aus, dass du mit einem frisch aufgesetzten VPS ohne vorinstallierte Pakete arbeitest.
Schritt 1: LAMP-Stack installieren
Als Erstes solltest du die Paketliste aktualisieren, damit die neuesten Versionen der Software verwendet werden:
$ apt-get update
Nach dem Update installierst du den kompletten LAMP-Stack (Linux, Apache, MySQL, PHP) in einem Schritt über den folgenden Befehl. Alternativ kannst du die Komponenten auch einzeln installieren:
$ sudo apt-get install lamp-server^
Während der Installation wirst du aufgefordert, ein Passwort für den MySQL-root-Benutzer festzulegen. Wähle ein sicheres Passwort und bewahre es gut auf – du wirst es später noch benötigen.
Schritt 2: Apache konfigurieren
Bevor Magento installiert werden kann, muss Apache so eingerichtet werden, dass Weiterleitungen und URL-Rewrites korrekt verarbeitet werden. Dafür legst du eine neue Konfigurationsdatei für den virtuellen Host an:
$ sudo nano /etc/apache2/sites-available/magento.conf
Füge in dieser Datei folgenden Inhalt ein. In diesem Beispiel wird der Texteditor nano
verwendet, du kannst jedoch auch jeden anderen Editor einsetzen:
<VirtualHost *:80>
DocumentRoot /var/www/public
<Directory /var/www/public/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
</Directory>
</VirtualHost>
Der Inhalt der Datei sollte dem Screenshot mit dem Namen 1.png
entsprechen.
Speichere die Datei mit Strg + O und verlasse den Editor mit Strg + X.
Aktiviere anschließend die neue Konfiguration und deaktiviere die Standardkonfiguration über diese beiden Befehle:
$ sudo a2ensite magento.conf
$ sudo a2dissite 000-default.conf
Zum Abschluss musst du Apache neu starten, damit die Änderungen wirksam werden:
$ sudo service apache2 reload
Schritt 3: PHP für Magento konfigurieren
Da Magento eine sehr anspruchsvolle Anwendung ist, müssen die Standardeinstellungen von PHP angepasst werden, um mehr Arbeitsspeicher bereitzustellen. In dieser Anleitung verwenden wir 512 MB für eine Testinstallation. Für produktive Umgebungen wird jedoch empfohlen, je nach Shop-Größe zwischen 1 GB und 4 GB zuzuweisen.
Öffne zunächst die Konfigurationsdatei php.ini
mit einem Texteditor:
$ sudo nano /etc/php5/apache2/php.ini
Suche in der Datei nach dem Eintrag für das PHP-Memory-Limit und ändere ihn wie folgt ab:
memory_limit = 512M
Diese Änderung ist im Screenshot mit dem Namen 2.png
dargestellt.
Speichere die Datei mit Strg + O und verlasse den Editor mit Strg + X.
Magento benötigt außerdem zusätzliche PHP-Module, die du mit einem einzigen Befehl installieren kannst:
$ sudo apt-get install php5-mcrypt php5-curl php5-gd libcurl3 php5-intl php5-xsl
Nach Abschluss der Installation müssen einige Module manuell aktiviert werden. Verwende dazu folgende Befehle:
$ sudo a2enmod rewrite
$ sudo php5enmod mcrypt
Starte abschließend den Apache-Webserver neu, damit alle Änderungen übernommen werden:
$ sudo service apache2 restart
Schritt 4: MySQL für Magento vorbereiten
Magento verwendet MySQL, um sämtliche Inhalte und Konfigurationsdaten der Website zu verwalten. Dafür muss eine eigene Datenbank eingerichtet werden. Öffne zunächst die MySQL-Kommandozeile mit dem Passwort, das du während der LAMP-Installation festgelegt hast:
$ mysql -u root -p
Im MySQL-Terminal führst du folgenden Befehl aus, um die Datenbank für Magento anzulegen:
CREATE DATABASE magento;
Beende das MySQL-Terminal mit Strg + C.
Schritt 5: Magento mit Composer installieren
Installiere zunächst Composer, ein Abhängigkeitsmanager für PHP, über folgenden Befehl:
$ curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
Um Zugriff auf das Magento-Quellcode-Repository zu erhalten, benötigst du ein Schlüsselpaar zur Authentifizierung. Die Erstellung dieser Schlüssel ist in der offiziellen Magento Developer-Dokumentation beschrieben.
Sobald du die Schlüssel generiert hast, füge sie in die Authentifizierungsdatei von Composer ein. Öffne die Datei mit folgendem Befehl:
$ sudo nano /root/.composer/auth.json
Trage dort den folgenden JSON-Inhalt ein – ersetze die Platzhalter mit deinem öffentlichen und privaten Schlüssel:
{
"http-basic": {
"repo.magento.com": {
"username": "<your public key>",
"password": "<your private key>"
}
}
}
Wechsle anschließend in das Root-Verzeichnis des Webservers:
$ cd /var/www
Klone das Magento-Repository über Git und gib die gewünschte Versionsnummer an (in diesem Fall Version 2.0):
$ git clone -b 2.0 https://github.com/magento/magento2.git public
Wechsle in das eben geklonte Magento-Verzeichnis:
$ cd public
Installiere anschließend alle benötigten Abhängigkeiten für Magento mit Composer:
$ composer install
Schritt 6: Installation im Browser abschließen
Öffne jetzt deinen Webbrowser und rufe die IP-Adresse deines VPS-Servers auf.
Nach dem Aufruf solltest du vom grafischen Installationsassistenten von Magento begrüßt werden. Folge den Schritten im Setup-Wizard und trage dabei die Datenbank-Zugangsdaten ein, die du zuvor in diesem Tutorial erstellt hast.
Fazit
Wenn du alle Schritte dieser Anleitung befolgt hast, läuft nun Magento auf einem Ubuntu-15.04-Server mit vollständig eingerichteter LAMP-Umgebung. Von der Konfiguration von Apache und PHP über das Anlegen der MySQL-Datenbank bis hin zur Installation von Magento via Composer und dem Setup im Browser – deine Entwicklungsumgebung ist jetzt bereit, die umfangreichen Funktionen von Magento zu nutzen.
Beachte, dass Magento eine sehr ressourcenintensive Software ist. Wenn du planst, den Shop produktiv zu betreiben, solltest du deine Serverleistung entsprechend anpassen und optimieren. Achte außerdem darauf, regelmäßig Sicherheitsupdates und Magento-Aktualisierungen einzuspielen, um Stabilität und Sicherheit zu gewährleisten.
Mit dieser technischen Grundlage kannst du nun damit beginnen, deinen Shop individuell zu gestalten, Produkte einzupflegen und deinen Onlinehandel vorzubereiten.