Zum Inhalt springen

Installation auf Plesk

Diese Anleitung geht vom üblichen Fall aus: ein Webhosting-Paket mit Plesk, eine Domain, ein leeres Verzeichnis httpdocs. Die Pfade heißen bei dir vielleicht etwas anders — das Prinzip bleibt gleich.

  1. Websites & Domains → Domain hinzufügen (oder die vorhandene Domain öffnen).
  2. SSL/TLS-Zertifikate → Let’s Encrypt — Zertifikat für die Domain und www. ausstellen.
  3. Unter Hosting & DNS → Hosting „Permanente, SEO-geeignete 301-Weiterleitung von HTTP auf HTTPS” einschalten.

Hosting & DNS → PHP (bzw. PHP-Einstellungen):

  • PHP-Version: die Version aus den Systemvoraussetzungen, als FPM-Anwendung von Apache bedient (oder nginx).
  • Weiter unten: memory_limit 256M oder mehr, max_execution_time 120 oder mehr, upload_max_filesize und post_max_size 64M oder mehr.
  • OK klicken.

Das ist der wichtigste Schritt — ohne ihn liegt die Konfigurationsdatei mit allen Zugangsdaten offen im Netz, oder der Shop zeigt nur eine Verzeichnisliste.

  1. Hosting & DNS → Hosting (in älteren Versionen Hosting-Einstellungen).
  2. Feld Dokumentstamm: von httpdocs auf httpdocs/public ändern.
  3. OK klicken.

Danach liefert der Webserver nur noch aus, was unter httpdocs/public/ liegt. Programmcode, .env, storage/ und vendor/ liegen eine Ebene darüber und sind von außen nicht erreichbar.

Datenbanken → Datenbank hinzufügen:

  • Name z. B. shop, Benutzer mit eigenem Passwort anlegen.
  • Server, Name, Benutzer und Passwort notieren — der Installer fragt danach.
  1. Das Installationspaket (ZIP mit allen Bibliotheken) über den Datei-Manager nach httpdocs hochladen.
  2. Im Datei-Manager rechts neben der ZIP Entpacken wählen — direkt nach httpdocs. Danach liegen dort u. a. app/, platform/, public/, vendor/, artisan.
  3. Die ZIP löschen.

Per SSH geht das schneller:

Terminal-Fenster
cd /var/www/vhosts/deine-domain.de/httpdocs
unzip wavux-installation.zip && rm wavux-installation.zip

Ein ZIP speichert keine brauchbaren Dateirechte. Bei Plesk erledigt das Hosting & DNS → Hosting → Berechtigungen zurücksetzen zuverlässig. Alternativ per SSH im Shop-Verzeichnis:

Terminal-Fenster
sh rechte-setzen.sh

Das Skript setzt public/ auf lesbar, storage/ und bootstrap/cache/ auf beschreibbar und die .env auf 640.

Im Browser https://deine-domain.de öffnen — der Shop leitet selbst auf /install.

Schritt Was du tust
1 · Systemanforderungen Prüfen, ob alles grün ist. Gelbe Hinweise (Speicher, Laufzeit, Upload) jetzt in Plesk nachziehen.
2 · Datenbank Server (meist localhost), Name, Benutzer, Passwort aus Schritt 4. Die Verbindung wird getestet.
3 · Shop-Daten Name des Shops und seine Adresse mit https://.
4 · Administrator Dein Backend-Konto. Danach legt der Installer alle Tabellen an und stellt den Shop auf Produktivbetrieb.

Am Ende landest du im Backend unter https://deine-domain.de/admin.

Geplante Aufgaben → Aufgabe hinzufügen:

Feld Wert
Aufgabentyp PHP-Skript ausführen
Skriptpfad /var/www/vhosts/deine-domain.de/httpdocs/artisan
mit Argumenten schedule:run
PHP-Version dieselbe wie in Schritt 2
Ausführen Benutzerdefiniert: * * * * * (jede Minute)
Benachrichtigung nicht benachrichtigen

Steht unter Apache & nginx Einstellungen „nginx als Reverse-Proxy” oder läuft die Domain nur über nginx, gehören zwei Regeln in das Feld Zusätzliche nginx-Direktiven — eine, die hochgeladene Dateien nie als Programm ausführt, und eine für lange Cache-Zeiten. Die Regeln stehen hier.

Der Shop läuft — jetzt kommen Rechtstexte, Zahlungsarten, Versand und Theme. Zur Ersteinrichtung

Was du siehst Ursache und Abhilfe
503 direkt nach dem Hochladen PHP-Version passt nicht. Im Fehlerprotokoll (logs/error_log) steht „Your Composer dependencies require a PHP version …“. Version in Plesk umstellen, Übernehmen.
503 bleibt nach dem Umstellen Der PHP-FPM-Dienst der neuen Version läuft noch nicht. In Plesk einmal Übernehmen; sonst per SSH plesk bin php_handler --reread.
403 Forbidden Rechte (Schritt 6) — oder der Dokumentstamm zeigt noch auf httpdocs.
Verzeichnisliste oder „Index of /” Dokumentstamm nicht auf public gesetzt (Schritt 3).
Seite ohne Layout, Bilder fehlen Verknüpfungen unter public/ fehlen. Einmal die Startseite neu laden — der Shop legt sie selbst an; sonst php artisan storage:link.