Als "Webserver" bezeichnet man Programme, die über das HTTP-Protokoll Anfragen entgegennehmen (z.B. von einem Webbrowser über ein Internet) und Daten zurücksenden, die für die in der Anfrage genannte URL vorgesehen sind.
Die Daten sind entweder
Arbeitsgeschwindigkeit, Zuverlässigkeit, Erweiterbarkeit und den von ihnen unterstützten Betriebssystemen unterscheiden.
Funktion
Ein Nutzer stellt eine Anforderung, z. B. durch Anklicken eines Links in seinem Client (beispielsweise ein Webbrowser). Dieser stellt einen HTTP-„Request“ an den im Link adressierten Webserver. Dieser liefert die adressierte Seite inklusive beschreibender Metadaten in einem HTTP-„Response“ zurück. Der Client zeigt die übertragenen Daten dann beispielsweise an. (Siehe hierzu: Hypertext Transfer Protocol)
Im typischen Umfeld einer Website liefert ein Webserver vorwiegend statische Daten wie HTML-Seiten, Stylesheets, Bilder und Grafiken (JPG, GIF, PNG) zurück. Neben statischen Daten werden zunehmend dynamische, sprich beim Abruf erzeugte Daten, ausgeliefert. Dies geschieht durch den Einsatz von serverseitigen Programmen (vor allem PHP, JSP, ASP), Server-Containern (Servlets, ASP.NET, …) und Webservices (SOAP, XML-RPC). Durch die Verwendung dynamischer Seiten wird unter anderem interaktive Benutzerführung ermöglicht. Beispiele für dynamische Seiten sind Foren, Datenbank-Interfaces, Web-Shops oder Suchmaschinen.
Auf einem Webserver werden üblicherweise alle Anfragen in einer Logdatei protokolliert, aus dem mittels Logfile-Analyse Statistiken über Anzahl der Zugriffe pro Seite generiert werden können. Da HTTP ein verbindungs- und zustandsloses Protokoll ist, ist eine eindeutige Zuordnung einer Anforderung zu einem Nutzer nicht prinzipiell möglich. Die Angabe von Visits, Hits, Benutzer o. ä. ist daher nur eingeschränkt aussagekräftig. Zwischengeschaltete Proxy-Server, die gegenüber dem Webserver als Client auftreten, erschweren diese Zuordnung zusätzlich. Um genauere Daten zu erhalten, werden Cookies und dynamische Seiten (s. o.) eingesetzt.
Apache ist Open-Source-Software, arbeitet effizient und zuverlässig und bietet in seinem modularen Aufbau einen Leistungsumfang, der alle anderen Webserver übertrifft. Etwa 60% aller Websites laufen zurzeit unter Apache.
--- MPM BILD
Die Debian-Pakete legen bei der Installation eine gebrauchsfertige Grundkonfiguration an. Diese besteht aus mehreren Konfigurationsdateien, die sich in folgenden Verzeichnissen befinden:
-- ETC BILD
Die von anderen Distributionen bekannte, zentrale Konfigurationsdatei /etc/httpd/conf/httpd.conf heißt unter Debian /etc/apache2/apache2.conf. Sie enthält im Wesentlichen Include-Anweisungen auf die anderen Konfigurationsdateien sowie einige grundlegende Konfigurationsanweisungen, die Sie vermutlich niemals ändern müssen.
Beschreibung der includeten Konfigurationsdateien:
$ invoke-rc.d apache2 stop Stopping apache 2.0 web server....
$ invoke-rc.d apache2 restart # entspr. -reload und stop+start Starting apache 2.0 web server....
$ invoke-rc.d apache2 reload Reloading apache 2.0 configuration....