Magento ist eine Open-Source-E-Commerce-Software und ein Content-Management-System für E-Commerce-Websites, das auf dem PHP Zend Framework basiert. Es verwendet MySQL oder MariaDB als Datenbank-Backend. Die Magento-Entwicklung wurde 2008 von Varien gestartet.
In diesem Tutorial zeige ich Ihnen, wie Sie Magento 2 mit Nginx, PHP 7.0 im FPM-Modus und MariaDB als Datenbank installieren. Ich werde Ubuntu 16.04 (Xenial Xerus) als Serverbetriebssystem verwenden. Wenn Sie noch keine minimale Servereinrichtung haben, sehen Sie sich bitte diese Anleitung an, um eine ordnungsgemäße Basiseinrichtung zu erhalten.
Voraussetzungen:
- Ubuntu 16.04 - 64-Bit.
- Root-Berechtigungen.
Schritt 1 – Nginx installieren
Melden Sie sich mit Ihrem Root-Konto (z. B. per SSH) bei Ihrem Ubuntu-Server an und aktualisieren Sie das Repository.
sudo su
apt-get update
Installieren Sie dann Nginx:
apt-get install nginx -y
Überprüfen Sie, ob nginx ordnungsgemäß installiert wurde, indem Sie den Port überprüfen:
netstat -plntu | grep 80
Schritt 2 – PHP-FPM installieren und konfigurieren
In diesem Schritt installieren wir PHP 7 im PHP-FPM-Modus. Zusätzlich werden wir die folgenden PHP-Erweiterungen installieren, die von Magento benötigt werden.
- php-gd
- php-mhash
- php-mcrypt
- php-xsl
- php-birne
- php-soap
Installieren Sie die Pakete mit dem folgenden apt-Befehl:
apt-get install php7.0-fpm php7.0-mcrypt php7.0-curl php7.0-cli php7.0-mysql php7.0-gd php7.0-xsl php7.0-json php7.0-intl php-pear php7.0-dev php7.0-common php7.0-mbstring php7.0-zip php-soap libcurl3 curl -y
Bearbeiten Sie nun die php.ini-Dateien für fpm und cli.
vim /etc/php/7.0/fpm/php.ini
vim /etc/php/7.0/cli/php.ini
und erhöhen Sie das Speicherlimit und die PHP-Ausführungszeit und schalten Sie die zlib-Komprimierung ein, indem Sie die folgenden Zeilen am Ende der Dateien hinzufügen:
memory_limit = 512M
max_execution_time = 1800
zlib.output_compression = On
Speichern Sie die Datei und verlassen Sie den Editor.
Starten Sie den PHP-FPM-Dienst neu, um die Konfigurationsänderungen zu übernehmen:
systemctl restart php7.0-fpm
Schritt 3 – MariaDB installieren und konfigurieren
Ich werde hier MariaDB anstelle von MySQL verwenden. Installieren Sie MariaDB mit dem apt-Befehl:
apt-get install mariadb-server mariadb-client -y
Legen Sie das MariaDB-Root-Benutzerpasswort mit diesem Befehl fest:
mysqladmin -u root password mypassword
mysql_secure_installation
Set root password? [Y/n] Y
New password:
Re-enter new password: <-- Enter the new password
Remove anonymous users? [Y/n] Y
... Success!
Disallow root login remotely? [Y/n] Y
... Success!
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
... Success!
Verbinden Sie sich dann mit der MySQL-Shell (die MariaDB-Shell wird mit dem Befehl mysql gestartet ) erstellen Sie mit Ihrem Root-Passwort eine Datenbank mit dem Namen "magentodb". ' und einen Benutzer 'magentouser ' mit dem Passwort '[email protected] '. Bitte wählen Sie ein sicheres Passwort für den „magentouser“ auf Ihrem Server und nicht das „[email protected] ', die ich in diesem Beispiel verwendet habe!
Melden Sie sich bei der MySQL-Shell an:
mysql -u root -p
Führen Sie in der MySQL-Shell diese Befehle aus:
create database magentodb;
create user [email protected] identified by '[email protected]';
grant all privileges on magentodb.* to [email protected] identified by '[email protected]';
flush privileges;
\q
Datenbank erstellt und konfiguriert.
Schritt 4 – Magento 2 installieren und konfigurieren
Wir installieren Magento im Verzeichnis ‚/var/www/magento2‘. Für die Magento Installation benötigen wir den PHP Composer.
- Installieren Sie den PHP-Composer
Gehen Sie in das Stammverzeichnis, laden Sie die Composer-Installationsdatei mit curl herunter und führen Sie sie aus, um Composer zu installieren.
cd ~/
curl -sS https://getcomposer.org/installer | php
Verschieben Sie die Datei „composer.phar“ in das bin-Verzeichnis Ihres Servers und benennen Sie sie in „composer“ um, damit sie einfach ausgeführt werden kann:
mv composer.phar /usr/bin/composer
Überprüfen Sie nun, ob der Composer-Befehl funktioniert:
composer -v
- Magento 2 herunterladen und extrahieren
Gehen Sie in das Webverzeichnis ‚/var/www/‘ und laden Sie Magento aus seinem Github-Repository herunter, entpacken Sie dann die heruntergeladene tar.gz-Datei:
cd /var/www/
wget https://github.com/magento/magento2/archive/2.0.7.tar.gz
tar -xzvf 2.0.7.tar.gz
mv magento2-2.0.7/ magento2/
Fertig.
- Konfigurieren Sie den Magento Key
Registrieren Sie ein Konto auf der Magento-Website repo.magento.com. Dieses Konto ist erforderlich, um Magento und den Magento Composer Store zu verwenden. Wenn Sie sich registriert haben, gehen Sie auf die Registerkarte 'Mein Konto> Entwickler> Sicherer Schlüssel s', generieren Sie als nächstes Ihre Schlüssel.
- Installieren Sie Komponenten von Drittanbietern für Magento
Wechseln Sie in das Magento 2-Installationsverzeichnis ‚/var/www/magento2‘ und führen Sie den Composer-Befehl aus:
cd /var/www/magento2/
composer install -v
Sie werden nach der Magento-Authentifizierung gefragt, verwenden Sie den öffentlichen Schlüssel als Benutzernamen und den privaten Schlüssel als Passwort.
- Konfigurieren Sie den virtuellen Nginx-Host
Magento bietet eine vorgefertigte virtuelle Nginx-Host-Konfiguration, also müssen wir sie nur in unsere Konfiguration aufnehmen.
Wechseln Sie in das Verzeichnis des virtuellen Nginx-Hosts und erstellen Sie eine neue Datei mit dem Namen Magento:
cd /etc/nginx/sites-available/
vim magento
Konfiguration unten einfügen:
upstream fastcgi_backend {
server unix:/run/php/php7.0-fpm.sock;
}
server {
listen 80;
server_name www.newmagento.com;
set $MAGE_ROOT /var/www/magento2;
set $MAGE_MODE developer;
include /var/www/magento2/nginx.conf.sample;
}
Ersetzen Sie www.newmagento.com durch den Domainnamen der Website, die Ihr Shop verwenden soll.
Speichern und beenden.
Aktivieren Sie nun den virtuellen Host und starten Sie Nginx neu:
ln -s /etc/nginx/sites-available/magento /etc/nginx/sites-enabled/
systemctl restart nginx
- Installieren Sie Magento
Wir werden Magento auf der Kommandozeile installieren. Im Magento-Verzeichnis ‚/var/www/magento2/‘ gibt es eine Binärdatei mit dem Namen ‚magento‘, die zum Installieren und Verwalten von Magento verwendet wird. Führen Sie den Befehl aus:
bin/magento setup:install --backend-frontname="adminlogin" \
--key="biY8vdWx4w8KV5Q59380Fejy36l6ssUb" \
--db-host="localhost" \
--db-name="magentodb" \
--db-user="magentouser" \
--db-password="[email protected]" \
--language="en_US" \
--currency="USD" \
--timezone="America/New_York" \
--use-rewrites=1 \
--use-secure=0 \
--base-url="http://www.newmagento.com" \
--base-url-secure="https://www.newmagento.com" \
--admin-user=adminuser \
[email protected] \
[email protected] \
--admin-firstname=admin \
--admin-lastname=user \
--cleanup-database
Backend-Frontname =die Admin-Seite für unsere Magento-Site, wir verwenden 'adminlogin '.
Schlüssel =unsere Magento-Schlüssel, wir können sie generieren oder zufällig auf http://randomkeygen.com/ finden.
Basis-URL =Stellen Sie sicher, dass es mit der Konfiguration des virtuellen Hosts identisch ist.
Am Ende des Installationsvorgangs sollten Sie diese Zeilen sehen:
[SUCCESS]: Magento installation complete. [SUCCESS]: Magento Admin URI: /adminlogin
Bevor wir die Magento-Installation testen, vergewissern Sie sich, dass der Besitzer des Webverzeichnisses 'www-data ist ', dann starten Sie nginx neu.
cd /var/www/magento2/
chmod 700 /var/www/magento2/app/etc
chown -R www-data:www-data .
systemctl restart nginx
Öffnen Sie nun die Magento-Domain in Ihrem Browser:
In meinem Fall lautet der Domainname:www.newmagento.com .
Versuchen Sie, sich beim Magento-Admin-Dashboard anzumelden:
www.newmagento.com/adminlogin
Hinweis:
Wenn Sie eine Fehlermeldung über einen fehlenden Magento-Indexer-Cronjob erhalten, können Sie ihn beheben, indem Sie den folgenden Cronjob zu Ihrem Server hinzufügen:
crontab -u www-data -e
Fügen Sie die folgenden Zeilen hinzu:
* * * * * /usr/bin/php /var/www/magento2/bin/magento cron:run | grep -v "Ran jobs by schedule" >> /var/www/magento2/var/log/magento.cron.log * * * * * /usr/bin/php /var/www/magento2/update/cron.php >> /var/www/magento2/var/log/update.cron.log * * * * * /usr/bin/php /var/www/magento2/bin/magento setup:cron:run >> /var/www/magento2/var/log/setup.cron.log
Speichern und beenden.
Magento 2 mit Nginx und PHP-FPM 7 auf Ubuntu 16.04 ist jetzt installiert.
Schlussfolgerung
Magento ist eine Open-Source-E-Commerce-Plattform, die auf dem PHP Zend Framework basiert. Es ist eine komplexe E-Commerce-Software, die Sie bei Ihrem Online-Geschäft unterstützt. Magento verwendet eine MVC-Architektur (Model-View-Controller) und MySQL oder MariaDB als Datenbank. Magento ist einfach zu installieren, wir können es mit Nginx oder Apache Webserver installieren. Magento hat sich zu einer der beliebtesten E-Commerce-Software im Internet entwickelt und wird von vielen erfolgreichen Shop-Websites weltweit verwendet.