Statische Seiten
Für Webseiten mit statischen Inhalten kann Deploio durch eine Kombination von Buildpacks einen Webserver zur Verfügung stellen, um die statischen Inhalte auszuliefern.
Wenn du den Heroku-Buildpack-Stack
mit nctl verwendest, muss beim Erstellen oder Aktualisieren der Applikation
explizit --language=static gesetzt werden, da die automatische Erkennung von
statischen Seiten nur im Paketo-Stack und nicht im Standard-Heroku-Stack verfügbar ist.
Statische Inhalte werden durch folgende Dateien im Git Repository erkannt:
index.htmlpublic/index.html
Beispiel-Apps
Wir haben zwei statische Seiten in unserem
Beispiele-Repository. Du
kannst diese mit nctl deployen:
- Heroku Stack
- Paketo Stack
Einfaches index.html:
nctl create application static-html \
--language=static \
--git-url=https://github.com/ninech/deploio-examples \
--git-sub-path=heroku-stack/static/html
React App mit npm:
nctl create application static-react \
--language=static \
--git-url=https://github.com/ninech/deploio-examples \
--git-sub-path=heroku-stack/static/react
Einfaches index.html:
nctl create application static-html \
--buildpack-stack=paketo \
--git-url=https://github.com/ninech/deploio-examples \
--git-sub-path=paketo-stack/static/html
React App mit npm:
nctl create application static-react \
--buildpack-stack=paketo \
--git-url=https://github.com/ninech/deploio-examples \
--git-sub-path=paketo-stack/static/react
Paketo-Stack-Konfiguration
Um die automatisch detektierten Pfade zu überschreiben, kann die Build-
Umgebungsvariable BP_STATIC_WEBROOT=<Verzeichnis> auf ein beliebiges Verzeichnis im Git Repository gesetzt werden.
Heroku-Stack-Konfiguration
Beim Heroku-Stack wird der Webserver über eine project.toml-Datei im Root
des Repositories konfiguriert, anstatt über Build-Umgebungsvariablen. Das
standardmässige Dokumenten-Root-Verzeichnis ist public.
Um das Dokumenten-Root-Verzeichnis oder die Index-Datei zu ändern, füge
Folgendes zu deiner project.toml hinzu:
[com.heroku.static-web-server]
root = "dist"
index = "index.html"
Das Buildpack unterstützt weitere Optionen wie benutzerdefinierte
Antwort-Header, Fehlerseiten, Weiterleitungen und saubere URLs – alles
konfigurierbar über project.toml. Die vollständige Referenz finden Sie in
der Dokumentation des Heroku Static Web Server
Buildpacks.
NPM Frontend
Sofern die statische Seite zusätzlich Node-Module beinhaltet, wird Deploio
dies anhand der package.json Datei erkennen und während dem Build Prozess
mit npm installieren. Die resultierenden Artefakte landen dann im build-
Verzeichnis und der Webserver wird automatisch dieses Verzeichnis verwenden, um
die statischen Inhalte auszuliefern.