Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
de:modul:ffit:3-jahr:cicd:learningunits:lu10:a [2026/04/28 15:19] apeterde:modul:ffit:3-jahr:cicd:learningunits:lu10:a [2026/04/28 17:41] (aktuell) apeter
Zeile 6: Zeile 6:
   * Applikation, um Webinhalte (HTML, CSS, JS) darzustellen   * Applikation, um Webinhalte (HTML, CSS, JS) darzustellen
 </WRAP> | <WRAP> **Webserver** </WRAP> | <WRAP> **Webserver**
-  * Liefert Inhalte über HTTP(S) an den Browser+  * Nimmt HTTP(S)-Requests entgegen und liefert Antworten zurück an den Browser
   * Die Inhalte können statisch oder dynamisch sein   * Die Inhalte können statisch oder dynamisch sein
 </WRAP> | </WRAP> |
Zeile 12: Zeile 12:
 | <WRAP> **Frontend** | <WRAP> **Frontend**
   * Der Teil der Webseite, der an den Aufrufer ausgeliefert wird und im Browser läuft    * Der Teil der Webseite, der an den Aufrufer ausgeliefert wird und im Browser läuft 
-</WRAP> | <WRAP> **Backend** +</WRAP> | <WRAP>**Backend** 
-  * Der Teil der Webseite, der gegenüber dem Webbenutzer verborgen ist +  * Läuft auf dem Server und verarbeitet Anfragen 
-  * Blackbox, auf die via API zugegriffen werden kann +  * Stellt Daten oder Funktionen über APIs bereit
 </WRAP> | </WRAP> |
  
 | <WRAP> **Statische Webseite** | <WRAP> **Statische Webseite**
-  * Besteht bereits aus Dateien, die vom Browser interpretiert werden kann (HTML, CSS, JS)+  * Besteht aus fertigen Dateien (HTML, CSS, JS), die direkt ausgeliefert werden
 </WRAP> | <WRAP> **Dynamische Webseite** </WRAP> | <WRAP> **Dynamische Webseite**
   * Inhalte werden abhängig vom Request zur Laufzeit erzeugt (.php-> .html, ...)   * Inhalte werden abhängig vom Request zur Laufzeit erzeugt (.php-> .html, ...)
Zeile 25: Zeile 25:
 ==== Static vs dynamic hosting ==== ==== Static vs dynamic hosting ====
  
-^ Static hosting ^ Dynamic hosting ^ +Ob etwas statisch deploybar ist, hängt nicht von den Features ab, sondern davon, ob der Server zur Laufzeit am Rendering beteiligt ist.
-| | |+
  
 +Es ist also eine Architekturfrage, ob man Server-Side-Rendering (SSR) einsetzt oder nicht.
 +
 +Salopp gesagt, können die meisten Webapplikationen in ein statisches Frontend und ein (allfälliges) dynamisches Backend aufgeteilt werden.
 +
 +Statische Webseiten sind möglich bei
 +  * Vanilla
 +  * Angular
 +  * React
 +  * Vite
 +  * Astro (default)
 +
 +Ausnahmen sind 
 +  * PHP
 +      * .php
 +  * Next.js mit API/SSR
 +      * getServerSideProps
 +      * Routing (route.js, route.ts, "/api/*")
 +      * NextResponse
 +      * cookies()
 +      * headers()
 +  * Express mit Templates
 +      * .ejs
 +      * .pug
 +      * .hbs
  
 ==== Next.js ==== ==== Next.js ====
 +
 +''next.config.js''
 <code javascript> <code javascript>
 const nextConfig = { const nextConfig = {
Zeile 37: Zeile 62:
 module.exports = nextConfig; module.exports = nextConfig;
 </code> </code>
 +
 +Nach dem erfolgreichen Ausführen von folgendem Befehl, sind die fertigen Dateien unter ''/out'' verfügbar.
 <code bash> <code bash>
 npm run build npm run build
 </code> </code>
 +
 +<code bash>
 +npx serve out
 +</code>
 +
 +Mögliche Fehler:
 +  * „Route Handlers are not supported with output: export“
 +  * „Dynamic server usage“
 +
  • de/modul/ffit/3-jahr/cicd/learningunits/lu10/a.1777382357.txt.gz
  • Zuletzt geändert: 2026/04/28 15:19
  • von apeter