Webserver & Website

Erstelle mit HTML, CSS und JavaScript eine eigene Website. Setze einen Raspberry Pi als Server auf und hoste auf diesem deine Website.

Nur TALITS: Die Website muss ein Backend (z.B. Flask) beinhalten. Für Nicht-TALITs ist dies rein optional (und nur Empfohlen für Personen mit viel Vorwissen in diesem Bereich).

Diese wird abgegeben und mittels mündlicher Prüfung benotet. Sämtlicher Code, den die Website beinhaltet, muss man zu 100% verstanden haben (wird an mündl. Prüfung überprüft).

  • Verstehen, was ein (Web)Server ist …
  • … und wie man mit einem solchen eine Website betreiben kann.
  • Mit Linux auf einem Raspberry Pi arbeiten.
  • Mit der Kommandozeile arbeiten.
  • Die Programmiersprache JavaScript lernen.
  • Eine Website mit HTML, CSS und JavaScript erstellen.
  • TALITs: Backend programmieren
  • Mündliche Prüfung absolvieren.

Gesamtprojekt: 1 Note

davon je 50%:

  • Abgegebene Website
  • mündliche Prüfung

Kriterien Website

  • Funktionalität
  • Schwierigkeitsgrad (abhängig von Anz. Lektionen, die zur Verfügung stehen, z.B. falls 4M weniger Zeit als 3M)
  • Code
  • Design & Layout
  • (Inhalt/Sprache)

Bonuspunkte:

  • Mobile Layout

mündliche Prüfung

Zeit: Ca. 15' pro Person

Themen:

  • Grundlagen Webseite (HTML, CSS, JavaScript, Backend (TALITs))
  • Fragen zu deiner Seite
  • Grundlagen Netzwerke (Big Picture, keine Details)
  • Deadline: (folgt noch)
  • Schritte Abgabe:
    • 1. (Falls noch nicht gemacht.) Erstelle GitHub-Repo für Projekt und lade alle relevanten Dateien dort hoch.
    • 2. Kontrolliere auf GitHub, dass auch alles korrekt hochgeladen wird. Typischer Fehler: Vergessen, File(s) zu adden.
    • 3. Teile Repo mit beiden Lehrpersonen: anschae und mspeissegger
    • 4. Sende Teams-Nachricht in 3er-Chat (du und beide Lehrpersonen)
  • Verspätete Abgabe: -0.25 Note pro angebrochene 24h Verspätung, fehlende Files zählen auch als verspätete Abgabe
  • Lektion 1: 4.3.25
    • Ziele:
      • Raspi selbst aufsetzen
      • Linux kennenlernen
      • Raspi mit Terminalbefehlen steuern
    • Raspberry Pi aufsetzen (Betriebssystem mit GUI)
    • Programme installieren (z.B. LibreOffice)
    • Input Terminalbefehle
    • Auftrag zu Terminalbefehlen
  • Lektion 2: 11.3.25
    • Raspi wieder platt machen und neu aufsetzen mit Betriebssystem ohne GUI
    • Input DHCP
    • Feste IP pro Raspi festlegen
    • SSH Verbindung auf Raspberry Pi einrichten
    • Raspberry Pi per Kommandozeile steuern
  • Lektion 3: 18.3.25
  • Lektion 4: 25.3.25
  • Lektion 5: 1.4.25
    • Projektstart
Lektion 3M 4M
Di. 29.04.2025 an Website arbeiten an Website arbeiten
Di. 06.05.2025 Arduino Boxen zurück, sortieren
an Website arbeiten
Vorstellung 8-Bit-CPU
an Website arbeiten Abgabe 4M TALITs: Fr. 09.05.2025 @23.59
Di. 13.05.2025 an Website arbeiten mündl. Prüfung 4M TALITs
Abgabe 4M RegEFs: Fr. 16.05.2025 @23.59
Di. 20.05.2025 an Website arbeiten mündl. Prüfung 4M RegEFs
Notenabgabe 4M: Mo. 26.05.2025
Di. 27.05.2025 TBD (nicht an Website arbeiten) TBD
PFINGSFERIEN
Abgabe 3M: Di. 03.06.2025 @23.59
Di. 10.06.2025 mündl. Prüfungen abwesend
Di. 17.06.2025 mündl. Prüfungen falls nötig / TBD abwesend
Notenabgabe 3M: Fr. 20.06.2025 abwesend
Di. 24.06.2025 Unterrichtsfrei am NM abwesend
Di. 01.07.2025 Semesterschlusswoche abwesend

Auftrag 4M RegEF 20. Mai 2025

Teil I: Arduino Boxen kontrollieren

Gehe die Komponentenlisten beider Boxen sorgfälltig durch und stelle sicher, dass die richtige Anzahl der richtigen Komponenten vorhanden ist. Falls etwas fehlt (z.B. LED), rüste die Box wenn möglich nach.

  1. Beschrifte deine Komponentenliste mit deinem Name und Nummer.
  2. Fülle die Spalten der Komponentenlisten entsprechend aus: Gib von jeder Komponente an, wie viele Elemente vorhanden sind resp. fehlen.
  3. Unterzeichne das Dokument am Schluss.
Nummer Name Klasse
1 Bajramoska Rejda 4Mdz
2 Capizzi Mirea 3Ma
3 Copellini William 3Mc
4 Keskin Zeynep 4Ma
5 Oberthaler Rian 4Ma
6 Osti Luca 4Ma
7 Skenderi Hamza 4Ma
8 Subramaniam Darvin 3Mdz
9 Testolin Davide 4Mc
10 Wirth Aaron 4Ma
11 Zendeli Luan-Nebi 4Mb

Teil II: Server für Website

Hoste deine Website auf deinem Raspi. Die Seite soll über die (lokale) IP-Adresse deines Arduinos zugänglich sein, wenn man sich im gleichen WLAN befindet.

Bei Problemen und Unklarheiten nicht verzagen, einfach Andrii, Dimitri, Jona oder Laurin fragen!

Teil III: Homeserver

Richte auf deinem Raspi einen weiteren Serverdienst ein, der auf einem Homeserver nützlich sein könnte. Wähle selbst einen solchen aus, hier einige Ideen:

  1. Media-Server (Plex, Kodi,…)
  2. File-Share/File-Sync (Samba, Nextcloud, Syncthing, …)
  3. Wiki (DokuWiki,…)
  4. VPN

Bei Problemen und Unklarheiten nicht verzagen, einfach Andrii, Dimitri, Jona oder Laurin fragen!

Auftrag 4M TALITs 20. Mai 2025

  • Adventure Game Online stellen
  • weiter am Auftrag von letzter Woche (Server, DNS)

Auftrag 4M TALITs 13.05.2025

In Kürze: Zusammen einen Raspi als Server mit DNS-Server und diversen weitere Diensten aufsetzen und am Schluss kurz präsentieren. Der DNS-Server wird dann später benötigt für Websites alles EF-SuS.

Im Detail:

  1. Plan festlegen: Recherchiert kurz und entscheidet euch, welche Dienste ihr auf eurem Raspi haben wollt und wer welche aufsetzt. Hier eine mögliche Auswahl:
    1. DNS-Server (Dieser muss umgesetzt werden!) mit Beispielzonen ksr.ch und google.com.
    2. Media-Server (Plex, Kodi,…)
    3. File-Share/File-Sync (Samba, Nextcloud, Syncthing, …)
    4. Wiki (DokuWiki,…)
    5. VPN
  2. Raspi aufsetzen falls nötig, SSH-Zugang für alle.
  3. Jedes Gruppenmitglied richtet mind. einen der gewählten Dienste ein. Falls Zeit, weitere installieren.
  4. Präsentation: Jedes Gruppenmitglied präsentiert der Klasse kurz einen Dienst, ca. 3' pro Person.

Termine:

  • Abgabe 4M:
    • Fr 9.5.25 4M TALITs
    • Fr 16.5.25 4M RegEFs
  • Mündl. Prüfungen 4M:
    • Di 13.5.25 4M TALITs
    • Di 20.5.25 4M RefEFs
  • Notenabgabe 4M Mo 26.5.25
  • Notenabgabe 3M Fr 20.6.25
  • ef_informatik/web_server.txt
  • Zuletzt geändert: 2025-05-20 15:15
  • von sca