Prestashop auf Ubuntu 24.04 Server Installieren

Prestashop ist eine kostenlose und in PHP geschriebene Open-Source-E-Commerce-Lösung. Sie ermöglicht es dir, Online-Shops zu erstellen, selbst zu hosten und dein Online-Geschäft auszubauen.

Prestashop ist eine vollständig anpassbare und funktionsreiche E-Commerce-Lösung, mit der du umfassende E-Commerce-Websites erstellen kannst. Mittlerweile wird Prestashop von mehr als 250.000 Onlineshops auf der ganzen Welt genutzt und ist in 65 Sprachen verfügbar.

In dieser Anleitung erfährst du, wie du Prestashop auf dem Ubuntu 24.04 Server mit dem LAMP Stack (Linux, Apache, MySQL/MariaDB und PHP) und Composer installierst.

Voraussetzungen

Um mit dieser Anleitung zu beginnen, musst du Folgendes haben:

  • Einen Ubuntu 24.04 Server.
  • Einen Nicht-Root-Benutzer mit Administrator-Rechten.
  • Einen Domainnamen, der auf eine Server-IP-Adresse zeigt.

Installieren der Abhängigkeiten

Um Prestashop zu installieren, musst du Abhängigkeiten auf deinem System installieren. In diesem Beispiel installierst du den LAMP-Stack (Linux, Apache, MySQL/MariaDB und PHP), Composer und die Git-Pakete.

Führe zunächst den folgenden Befehl aus, um deinen Ubuntu-Paketindex zu aktualisieren.

sudo apt update

Führe nun den folgenden Befehl aus, um den LAMP-Stack (Linux, Apache, MySQL/MariaDB und PHP), Composer und Git als Abhängigkeiten für Prestashop zu installieren. Gib Y ein, um mit der Installation fortzufahren.

sudo apt install apache2 mariadb-server composer git php php-curl php-xmlrpc php-soap php-intl php-zip php-cli php-mysql php-common php-opcache php-memcached php-bcmath php-gd php-mbstring php-xml php-gmp php-imagick

deps installieren

Nachdem die Installation abgeschlossen ist, überprüfe den Status des Apache-Webservers wie folgt:

sudo systemctl is-enabled apache2
sudo systemctl status apache2

Du siehst unten, dass der Apache-Webserver läuft und aktiviert ist.

apache2 prüfen

Überprüfe den Status des MariaDB-Servers mit dem folgenden Befehl:

sudo systemctl is-enabled mariadb
sudo systemctl status mariadb

Du siehst eine ähnliche Ausgabe: Der MariaDB-Server läuft und ist auf deinem System aktiviert.

mariadb prüfen

Überprüfe nun die PHP-Version und die Liste der aktivierten Erweiterungen mit folgendem Befehl:

php -v
php -m

In der unten stehenden Ausgabe siehst du, dass PHP 8.3 installiert ist und einige Erweiterungen fileinfo, gd und opcache aktiviert sind.

php prüfen

Überprüfe schließlich die Composer- und Git-Version mit dem folgenden Befehl – du siehst, dass Composer 2.7.1 installiert ist.

sudo -u www-data composer --version

Komponist prüfen

PHP einrichten

Nachdem du die Abhängigkeiten für Prestashop installiert hast, musst du nun PHP konfigurieren, indem du die Datei php.ini bearbeitest und einige Standardoptionen für Prestashop änderst.

Öffne die Standard-PHP-Konfigurationsdatei /etc/php/8.3/apache2/php.ini mit dem folgenden Befehl nano editor.

sudo nano /etc/php/8.3/apache2/php.ini

Ändere die Standardkonfiguration mit folgendem Befehl. Passe die Optionen für date.timezone und memory_limit an deine Serverumgebung an.

date.timezone = Europe/Amsterdam
max_execution_time = 130
memory_limit = 256M
allow_url_fopen = On
allow_url_include = Off
post_max_size = 128M
upload_max_filesize = 128M
max_input_vars = 5000

Speichere und beende die Datei, wenn du fertig bist.

Führe nun den folgenden Befehl aus, um den Apache-Webserver neu zu starten und deine neue PHP-Konfiguration anzuwenden.

sudo systemctl restart apache2

MariaDB-Server einrichten

In diesem Abschnitt sicherst du den MariaDB-Server und erstellst eine neue Datenbank und einen neuen Benutzer für Prestashop. Du sicherst MariaDB mit dem Befehl mariadb-secure-installation und erstellst dann eine neue Datenbank und einen neuen Benutzer über den mariadb Client.

Um deinen MariaDB-Server zu sichern, führe den folgenden Befehl mariadb-secure-installation aus:

sudo mariadb-secure-installation

Nachdem der Befehl ausgeführt wurde, wirst du nach den folgenden Konfigurationen gefragt:

  • Auf unix_socket-Authentifizierung umstellen? Gib n ein und drücke ENTER. Der Standard-MariaDB-Root-Benutzer ist bereits geschützt. Optional kannst du ihn auch aktivieren, indem du y für yes eingibst.
  • Ändere das Root-Passwort. Gib y ein, um zu bestätigen und dein neues MariaDB Root-Passwort einzurichten.
  • Anonyme Benutzer entfernen? Gib y ein, um zu bestätigen.
  • Root-Login aus der Ferne verbieten? Gib zur Bestätigung y ein. Wenn du den MariaDB Root-Benutzer verwendest, ist nur eine lokale Verbindung erlaubt.
  • Die Testdatenbank entfernen und auf sie zugreifen. Bestätige mit y und entferne die Standarddatenbank „test“.
  • Gib abschließend erneut y ein, um alle Tabellenberechtigungen auf deinem MariaDB-Server neu zu laden und die neuen Änderungen anzuwenden.

Nachdem du den MariaDB-Server gesichert und konfiguriert hast, erstellst du mit dem mariadb Client eine neue Datenbank und einen neuen Benutzer für Prestashop.

Melde dich mit dem unten stehenden Befehl mariadb als root am MariaDB-Server an. Gib dein root Passwort ein, wenn du dazu aufgefordert wirst.

sudo mariadb -u root -p

Führe nun die folgenden Abfragen aus, um eine neue Datenbank prestashopdb und einen neuen Benutzer prestashop mit dem Passwort p4ssword zu erstellen. Achte darauf, dass du die detaillierten Informationen mit deinen eigenen abänderst.

CREATE DATABASE prestashopdb;
CREATE USER prestashop@localhost IDENTIFIED BY 'p4ssword';
GRANT ALL PRIVILEGES on prestashopdb.* TO prestashop@localhost;
FLUSH PRIVILEGES;

ceate-Datenbank

Als Nächstes führst du die unten stehende Abfrage t aus, um sicherzustellen, dass der Benutzer prestashop auf die Datenbank prestashopdb zugreifen kann.

SHOW GRANTS FOR prestashop@localhost;

In der unten stehenden Ausgabe siehst du, dass der Benutzer prestashop auf die Datenbank prestashopdb zugreifen kann.

Benutzer prüfen

Zum Schluss gibst du quit ein, um den MariaDB-Server zu verlassen.

Prüfen der Serverumgebung

Nachdem du sowohl PHP als auch MariaDB konfiguriert hast, musst du sicherstellen, dass dein Server für die Prestashop-Installation bereit ist. Du verwendest den Prestashop Checker, um sicherzustellen, dass dein Server bereit ist.

Gehe in das Verzeichnis /var/www/html und lade den Prestashop-Checker mit dem unten stehenden Befehl wget herunter.

cd /var/www/html
wget https://github.com/PrestaShop/php-ps-info/archive/refs/tags/v1.1.tar.gz

Führe den folgenden Befehl aus, um den Quellcode des Prestashop-Checkers zu entpacken und benenne das entpackte Verzeichnis in ps-check um.

tar -xf v1.1.tar.gz
mv php-ps-info-1.1 ps-check

Rufe nun http://server-ip/ps-check/phppsinfo.php mit deinem Webbrowser auf. Melde dich mit dem Standardbenutzer und dem Passwort prestashop an und stelle sicher, dass dein Server für die Prestashop-Installation bereit ist.

Ps-Prüfer

Herunterladen von Prestashop

Jetzt, da dein Server bereit ist, kannst du PrestaShop mit Composer installieren oder manuell über wget herunterladen. In diesem Beispiel wirst du Prestashop manuell herunterladen.

Erstelle ein neues Verzeichnis /var/www/prestashop mit folgendem Inhalt:

mkdir -p /var/www/prestashop

Gehe in das Verzeichnis /var/www/prestashop und lade den Prestashop-Quellcode mit dem folgenden Befehl wget herunter. Achte darauf, dass du auf der Prestasho GitHub Seite nachschaust, um die neueste Version zu erhalten.

cd /var/www/prestashop wget https://github.com/PrestaShop/PrestaShop/releases/download/8.1.6/prestashop_8.1.6.zip

Entpacke den Prestashop-Quellcode mit dem unten stehenden Befehl unzip.

unzip prestashop_8.1.6.zip

Führe nun den folgenden Befehl aus, um die Rechte und den Eigentümer des Prestashop-Installationsverzeichnisses /var/www/prestashop zu ändern.

sudo chown -R www-data:www-data /var/www/prestashop
sudo chmod u+rw /var/www/prestashop

Einrichten des virtuellen Apache-Hosts

In diesem Abschnitt wirst du eine neue virtuelle Hostdatei für Prestashop erstellen. Stelle also sicher, dass dein Domainname auf die IP-Adresse des Prestashop-Servers zeigt.

Führe den folgenden Befehl aus, um die Apache-Module rewrite, headers und ssl zu aktivieren.

sudo a2enmod rewrite headers ssl

Erstelle eine neue virtuelle Hostkonfiguration /etc/apache2/sites-available/prestashop.conf mit dem Editor nano.

sudo nano /etc/apache2/sites-available/prestashop.conf

Füge die folgende Konfiguration hinzu. Achte darauf, dass du die Option ServerName durch deinen Domainnamen ersetzt.

<VirtualHost *:80>
    ServerName hwdomain.com
    ServerAdmin admin@hwdomain.com
    DocumentRoot /var/www/prestashop

    <Directory /var/www/prestashop>
        # enable the .htaccess rewrites
        AllowOverride All
        Options +Indexes
        Require all granted

        # Disable back office token
        # SetEnv _TOKEN_ disabled
    </Directory>

     ErrorLog /var/log/apache2/prestashop_error.log
     CustomLog /var/log/apache2/prestashop_access.log combined
</VirtualHost>

Speichere und beende die Datei, wenn du fertig bist.

Als Nächstes führst du den folgenden Befehl aus, um die Datei prestashop.conf zu aktivieren und deine Apache-Syntax zu überprüfen. Wenn du die richtige Syntax hast, erhältst du die Ausgabe Syntax is OK.

sudo a2ensite prestashop.conf
sudo apachectl configtest

Zum Schluss führst du den unten stehenden Befehl aus, um den Apache-Webserver neu zu starten und deine Änderungen zu übernehmen.

sudo systemctl restart apache2

apache2 einrichten

Prestashop mit HTTPS absichern

In dieser Anleitung wirst du Prestashop mit HTTPS über Certbot und Letsencrypt absichern. Du musst Certbot installieren, um SSL/TLS-Zertifikate von Letsencrypt zu generieren. Dafür brauchst du auch eine E-Mail-Adresse.

Installiere die Pakete certbot und python3-certbot-apache mit dem unten stehenden Befehl. Gib Y ein, um die Installation zu bestätigen.

sudo apt install certbot python3-certbot-apache

Führe nun den unten stehenden Befehl certbot aus, um SSL-Zertifikate zu generieren und prestashop mit HTTPS zu sichern. Achte darauf, dass du die E-Mail-Adresse und den Domainnamen änderst.

sudo certbot --apache --agree-tos --no-eff-email --redirect --hsts --staple-ocsp --email admine@hwdomain.io -d hwdomain.io

Nachdem der Vorgang abgeschlossen ist, ist dein Prestashop mit HTTPS gesichert und deine SSL-Zertifikate sind im Verzeichnis /etc/letsencrypt/live/domain. conf verfügbar.

Installieren von Prestashop

Rufe deinen Prestashop-Domainnamen, z. B. http://hwdomain.io, mit einem Webbrowser auf. Es werden die Prestashop-Installationsassistenten angezeigt.

Wähle deine Sprache, z. B. Englisch, und klicke auf Weiter.

Sprache auswählen

Klicke auf Zustimmen, um die Prestashop-Lizenzvereinbarung zu akzeptieren.

Lizenzvereinbarung

Gib die Daten deines Shops sowie den neuen Admin-Benutzer und das Passwort für deine Prestashop-Installation ein. Klicke dann erneut auf Weiter.

Shop Info und Verwaltung

Du kannst Demodaten und zusätzliche Module in deinem Prestashop installieren. Klicke dann erneut auf Weiter.

install demo

Gib die Daten deiner MariaDB-Datenbank ein und klicke auf Weiter, um die Installation fortzusetzen.

Datenbankdetails

Nachdem die Installation abgeschlossen ist, siehst du Folgendes. Klicke auf Entdecke deinen Laden, um die Prestashop-Startseite zu sehen, oder auf Verwalte deinen Laden, um auf die Prestashop-Verwaltungsseite zuzugreifen.

Installation abgeschlossen

Bevor du die Prestashop-Verwaltungsseite aufrufst, gehe zurück zum Terminal und führe den folgenden Befehl aus, um das Verzeichnis /install zu löschen.

sudo rm -rf /var/www/prestashop/install

Fazit

Herzlichen Glückwunsch! Du hast Prestashop auf dem Ubuntu 24.04 Server installiert. Prestashop läuft mit dem LAMP-Stack und ist mit HTTPS über Certbot und letsencrypt gesichert.

Das könnte dich auch interessieren …