Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

Eine Website bereitstellen

Für CMS-Entwickler, wie eine Website vom Repository auf Staging und Live gelangt und Änderungen sicher ausgeliefert werden. Die Seite behandelt die Wahl des Webservers, was eine Bereitstellung überträgt, Einstellungen…

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/help/cms-developers/deploying-a-site.md

On this page

This page is a translation. Read the English original

Eine Website bereitstellen

Diese Seite richtet sich an Entwickler, die ein Projekt vom Repository auf Staging und Live bringen und nach dem Start Änderungen ausliefern. Die Regel hinter jedem Schritt: Der Server muss den neuen Code ausführen, bevor die Caches geleert werden, die fertige Seiten halten, sonst wird alte Ausgabe erneut zwischengespeichert.

Inhalt

  1. Wählen, wie die Website ausgeliefert wird
  2. Was eine Bereitstellung überträgt
  3. Einstellungen je Umgebung
  4. Die erste Bereitstellung
  5. Eine PHP-Änderung ausliefern
  6. Templates, Styles und Einstellungen ausliefern
  7. Wartungsmodus
  8. Die Konfiguration auf bereitgestellten Websites sperren
  9. Nach jeder Bereitstellung

Wählen, wie die Website ausgeliefert wird

ServerWann
Exponential Velocity (Engine qbix)die empfohlene Engine: ein PHP-Anwendungsserver, der mit Exponential ausgeliefert wird, mit persistenten Workern, eigenem Antwort-Cache und HTTPS
FrankenPHPdie produktionsreife Alternative
Apache oder nginx mit PHP-FPMwo der Stack des Hosts feststeht

Jeder mit seiner Einrichtung: Exponential bereitstellen und Einen Webserver wählen.

Was eine Bereitstellung überträgt

Kommt ausÜberträgt
Composer und Gitden Kernel und die mitgelieferten Erweiterungen in den Versionen Ihrer composer.json und composer.lock
Ihren RepositorysIhre Erweiterungen: Design, Templates, Einstellungen, Code, Pakete
Dem Rechner selbstsettings/override/ (Datenbank, E-Mail, Hosts), config.env.php, var/ (Speicher, Caches, Logs)
Der DatenbankInhalte, Klassen, Benutzer, Layouts

Inhalte werden nie von der Entwicklung auf Live bereitgestellt: Redakteure erstellen sie auf Live. Klassen und Layouts gelangen über Pakete und Übertragungsdateien auf Live, einmal angewendet (Seitenpakete und Installer, Layouts für CMS-Entwickler).

Einstellungen je Umgebung

EXP_ENV benennt in config.env.php (kopiert aus config.env.php.example, außerhalb der Versionsverwaltung) die Umgebung eines Rechners, und jede Einstellungsdatei kann eine Variante dafür haben, etwa settings/override/site.ini.test.append.php. E-Mail-Transport, Adressen der Website und Debug-Einstellungen unterscheiden sich dann je Rechner, ohne Änderungen nach jeder Bereitstellung (Einstellungen je Umgebung).

Die erste Bereitstellung

  1. Prüfen Sie den Rechner: PHP-Version und -Erweiterungen, beschreibbare Verzeichnisse, Datenbank (Anforderungen auf einen Blick).
  2. Holen Sie den Code (composer install aus Ihrem Projekt), fügen Sie Ihre Erweiterungen hinzu, schreiben Sie settings/override/.
  3. Installieren oder importieren Sie die Datenbank, dann Ihre Pakete und Layouts.
  4. Erzeugen Sie die Autoloads, leeren Sie die Caches, starten Sie den Server.
  5. Planen Sie die Cronjobs ein (Cronjobs) und richten Sie Sicherungen ein (Was zu sichern ist).
  6. Gehen Sie die Checkliste für den Projektstart durch.

Eine PHP-Änderung ausliefern

Ein Befehl erledigt jeden Schritt in der richtigen Reihenfolge und hält beim ersten Fehler an:

./console exp:velocity deploy --dry-run --allow-root-user   # what it would do
./console exp:velocity deploy --allow-root-user             # the usual case
./console exp:velocity deploy --kernel --allow-root-user    # a kernel class was added or renamed

Er erzeugt die Autoloads neu, leert die INI- und Template-Caches, lässt PHP-FPM und Velocity den neuen Code ausführen, leert dann die Inhalts- und Antwort-Caches und wärmt die ersten Seiten vor. Optionen wie --no-fpm, --no-velocity und --packer (leert zusätzlich gepackte Skripte und Styles) erklärt Eine PHP-Änderung mit einem Befehl ausliefern und für Hoster Änderungen bereitstellen.

Templates, Styles und Einstellungen ausliefern

ÄnderungSchritte
Ein vorhandenes Template./console exp:cache clear --id=template --allow-root-user, dann ./console exp:velocity cache clear --apply --allow-root-user
Ein neues Template oder eine neue Override-Regelini, template-override und content leeren, dann den Cache von Velocity
Ein Stylesheet oder Skriptmit --packer bereitstellen oder die Caches für Packer und Template-Blöcke leeren; fügen Sie Asset-Links nie ?v= hinzu
Eine INI-Datei--clear-tag=ini, Velocity neu starten

Wenn unklar ist, welcher Cache, siehe Caching für CMS-Entwickler.

Wartungsmodus

Für Änderungen, bei denen die Website geschlossen sein muss (eine Datenbankaktualisierung, ein großer Import):

./console exp:maintenance on --allow-root-user
./console exp:maintenance status --allow-root-user
./console exp:maintenance off --allow-root-user

php bin/php/maintenance.php on --message="Back at 06:00" --until=2h setzt eine Nachricht und ein erwartetes Ende; die Administration bleibt erreichbar. Setup > Maintenance tut dasselbe im Browser (Wartungsmodus).

Die Konfiguration auf bereitgestellten Websites sperren

Wenn Einstellungen unter Versionsverwaltung liegen, gingen Änderungen in der Administration bei der nächsten Bereitstellung verloren. Mit site.ini [ConfigurationSettings] ManagedByDeployment=enabled im Administrations-Siteaccess sind Einstellungseditor, Template-Editor, Aktivierung von Erweiterungen, Paketinstallation und die Code-Generatoren im Browser geschlossen; Kommandozeilenskripte und die Bereitstellung schreiben weiterhin (Konfiguration, die die Bereitstellung verwaltet).

Nach jeder Bereitstellung

  • Die Startseite und einige tiefe Seiten antworten mit 200 (curl -sI https://www.example.com/).
  • ./console exp:velocity status oder der Status des Webservers zeigt die erwarteten Prozesse.
  • ./console exp:cache status --allow-root-user zeigt die erwarteten Ebenen.
  • var/log/error.log hat keine neuen Fehler.
  • Die Cronjobs laufen weiterhin.

Verwandte Seiten

Werden Sie Exponential-Partner

Partner teilen ihre Informationen, stellen Mittel bereit, geben Beiträge zurück und entwickeln die Produkte mit uns, und so wächst Exponential. Eine Partner-Website und ein Dashboard sind für Mitte 2027 geplant: Werden Sie noch heute Partner, damit wir schneller wachsen und neue Funktionen früher liefern.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x