Zum Inhalt springen

Erste Schritte

Systemanforderungen

Pflicht

Bereich Anforderung
PHP 8.4.1 oder neuer
PHP-Erweiterungen pdo_mysql, mbstring, openssl, fileinfo, ctype, tokenizer, json, xml
Datenbank MySQL 8 oder MariaDB 10.6 und neuer. Datenbank und Benutzer mit vollen Rechten legst du selbst an — Shortlink tut es nicht. SQLite und PostgreSQL laufen technisch, sind aber nicht geprüft
Webserver nginx oder Apache mit PHP-FPM, Document-Root auf public/
TLS Zertifikat für die Domain
Composer 2.x
Zugang SSH und Zugriff auf die Zeitsteuerung (Cron)
Schreibrechte storage/ und bootstrap/cache/ für den PHP-Prozess beschreibbar

Nicht nötig

Node.js / npm Nur beim Weg über das Repository, und dort einmalig auf dem eigenen Rechner. Das Release-Paket bringt CSS und JavaScript fertig gebaut mit
Queue-Worker Es gibt keine Hintergrundarbeit. QUEUE_CONNECTION=sync genügt
Upload-Grenzen upload_max_filesize, post_max_size und client_max_body_size spielen keine Rolle
Freier Speicherplatz Es werden keine Dateien von Nutzern abgelegt — außer Logo und Theme-Datei durch Administratoren. Es wachsen nur Datenbankzeilen

Dringend empfohlen

  • HTTPS. Ohne TLS gehen Passwörter und Sitzungs-Cookies im Klartext über die Leitung, und „In die Zwischenablage kopieren" funktioniert im Browser nicht.
  • Mail-Versand. Ohne ihn lassen sich keine Konten einrichten, keine Passwörter zurücksetzen und keine Adressen ändern.
  • Zwei Cron-Einträge. Siehe Cron einrichten.

Prüfen

php artisan shortlink:check

Prüft PHP-Version, Erweiterungen, ob die Betriebsverzeichnisse vorhanden und beschreibbar sind und ob die .env nicht für alle lesbar ist. Ändert nichts, braucht weder .env noch Datenbank — läuft also schon vor der Installation.

Beschreibbarkeit wird mit einem echten Schreibversuch geprüft, nicht über die Rechte-Bits: Bei ACLs, NFS-Freigaben oder SELinux sagen die etwas anderes als die Wirklichkeit.

Nach der Installation steht eine erweiterte Prüfung unter Einstellungen → Systemdaten → Ausführliche Diagnose.

Geteilte Datenbank

Die Datenbank muss nicht leer sein. Teilst du sie mit anderen Anwendungen, vergib bei der Installation ein Tabellen-Präfix (--db-prefix, im Assistenten ein eigenes Feld).

Quelle dieser Seite: docs/systemanforderungen.md im Repository. Sie wird beim Bauen daraus erzeugt — Änderungen gehören in die Markdown-Datei, nicht in diese Seite.