Das Client/Server – Modell und die XAMPP-Distribution Allgemeine Informationstechnologien I Alexander Pentzlin & David Neugebauer 19.01.2011
Client/Server - Modell „Kunde“ und „Dienstleister“ Aufgabenverteilung zwischen verschiedenen Programmen (oft auf verschiedenen Rechnern)
Client/Server: Beispiele Webbrowser – Webserver Mailclient – Mailserver FTP-Client – Fileserver Onlinespiel – Gameserver Chatsoftware – Chatserver Die Begriffe „Client“ und „Server“ beziehen sich zunächst nur auf die Software
Server (Software) Apache (Webserver) Samba, ProFTPd (Dateiserver) Mercury, MS Exchange (Mailserver) PHPOpenChat (Chatserver)
Server (Hardware) Jeder Rechner, der Server (Software) für andere Rechner bereitstellt.
Client/Server - Kommunikation
Protokolle stellen Verständigung zwischen Client und Server sicher „Regelwerk“ oder „gemeinsame Sprache“ für verschiedene Programme Webbrowser – Webserver: HTTP, HTTPS Mailclient – Mailserver: SMTP, POP3, IMAP FTP-Client – Fileserver: FTP, SFTP Chatsoftware – Chatserver: IRC
Beispielprotokoll: HTTP Vermittlung: Webserver – Webbrowser z.B.: Bereitstellung einer Internetseite 1. Eingabe im Browserclient: 2. Browserclient sendet an Server: GET /wiki/ HTTP/1.1 Host: de.wikipedia.org (Standard unabhängig vom verwendeten Browserclient!)
Beispielprotokoll: HTTP 3. Serverantwort Header: HTTP/1.1 200 OK Server: Apache/1.3.29 (Unix) PHP/4.3.4 Content-Length: 153600 Content-Language: de Content-Type: text/html Connection: close Inhalt: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="de" dir="ltr"> <head> (…) (Standard unabhängig vom verwendeten Server!)
4. Ergebnis
XAMPP - Logo
XAMPP Distribution, bzw. Softwarepaket von typischen Serverprogrammen X variable Betriebssysteme Apache Webserver MySQL Datenbankverwaltung Perl Skriptsprache PHP Skriptsprache und andere Werkzeuge: FileZilla Server, Mercury Mailserver, phpMyAdmin, Webalizer, OpenSSL
(Apache) Webserver v.a.: Bereitstellung von Webseiten statische Seiten dynamische Seiten stehen dem Server in fester Form als Dateien zur Verfügung .htm, .html formatierter Text nicht interaktiv vom Server erst nach der Anfrage erzeugt und dann übermittelt z.B.: Suchfunktionen, Foren, Gästebücher, Web 2.0 „MPP“ von XAMPP
MySQL Datenbankverwaltungssystem Datenspeicherung und Aufruf über relationale Datenbanken
Perl & PHP serverseitige Skriptsprachen für verschiedenste Funktionen etwa: aktuelles Datum auf der Seite Änderungen je nach Standort des Clientrechners „Dieses Video enthält Content von Sony Music International und ist in deinem Land nicht verfügbar.“ Ablage, Aufruf von Formulardaten (z.B. durch Zugriff auf MySQL-Datenbanken!) dynamische Bildbearbeitung ...
XAMPP - Resümee Danke fürs Zuhören! Distribution typischer (Web-)Serverprogramme einfache Installation (v. a. auf dem eigenen Rechner) zunächst Nachteile in der Sicherheit vor allem als Testsystem im Einsatz Danke fürs Zuhören!