Apache

Was ist Apache?

 

Apache ist eine kostenlose und quelloffene Web-Software. Sie betreibt etwa 40% der Webseiten auf der Welt! Tatsächlich nutzt eine große Mehrheit der Webseiten, die du auf WordPress siehst, Apache als Webserver-Software.  Er wurde erstmals 1995 veröffentlicht und ist wahrscheinlich der älteste und beste Webserver auf dem Markt. 

Wir werden später noch auf die Gründe eingehen, jedoch können wir jetzt schon verraten, dass das Beste an Apache seine hohe Anpassungsfähigkeit ist. Du kannst es ganz einfach nach deinen Vorlieben anpassen. Das macht es zur perfekten Option für eine Reihe von unterschiedlichen Anwendungen mit ihren jeweiligen Anforderungen.

 

Was ist ein Webserver?

Ein Webserver hat in erster Linie die Aufgabe, Webseiten im Internet bereitzustellen. Im Wesentlichen fungiert er als Vermittler zwischen dem Server und den Client-Rechnern.

Wenn du also etwas von einer Website anforderst, ruft ihr Server den Inhalt ab und überträgt ihn ins Web. Denke dabei beispielsweise an das Servicepersonal in deinem Lieblingsrestaurant. Ihre Aufgabe ist es, deine Wünsche aufzunehmen und an den Küchenchef weiterzugeben! In gewisser Weise ist dies genau das, was dein Webserver auch macht.

Webserver arbeiten in der Regel damit verschiedene Dateien zu verarbeiten. Diese sind in einer Vielzahl von verschiedenen Programmiersprachen wie Java, PHP und Python geschrieben. Letztlich besteht seine Aufgabe darin, diese Dateien in statisches HTML umzuwandeln und weiterzuleiten.

Kurz gesagt, ein Webserver ist für die gesamte Kommunikation im Web zuständig und spielt daher eine wichtige Rolle.

Wie funktioniert Apache?

Unser erstes Anliegen wird es sein, zu verstehen, wie Apache arbeitet!

Zunächst einmal ist Apache, obwohl es als Webserver bezeichnet wird, nicht wirklich ein Webserver. Vielmehr handelt es sich um eine Software, die auf dem Server läuft. Es handelt sich letztlich um eine plattformübergreifende Software, was bedeutet, dass sie sowohl unter Windows als auch unter Unix laufen kann.

Dabei stellt Apache eine Verbindung zwischen dem Browser eines Benutzers (zum Beispiel Google) und einem Server her. Es hält also die Client-Server-Beziehung aufrecht, indem es Dateien zwischen dem Client und dem Server sendet und empfängt.

Lass uns hierzu ein Beispiel anschauen. Du befindest dich auf der Website einer Digitalagentur und möchtest sie für dein nächstes Projekt beauftragen. Bevor du deine Wahl triffst, möchtest du jedoch mehr über ihre Agentur wissen. Natürlich wirst du daraufhin auf die Seite "Über uns" klicken.

Sobald du dies tust, sendet dein Browser eine Anfrage an den Server der Digitalagentur, woraufhin Apache dir eine Antwort mit allen angeforderten Dateien sendet, einschließlich des gesamten Textes auf der Seite "Über uns", sowie aller Bilder oder Videodateien. Die Hauptkommunikation zwischen deinem Browser und dem Server erfolgt über ein HTML-Protokoll, wobei Apache dafür sorgt, dass diese Kommunikation transparent, reibungslos und sicher bleibt.

Wie bereits erwähnt, ist Apache ein sehr anpassungsfähiger Server. Es arbeitet mit einer modulbasierten Funktionsstruktur, was bedeutet, dass Serveradministratoren auf zusätzliche Funktionen zugreifen können, wenn sie dies wünschen. Apache verfügt über viele Module, die deine Webserver-Erfahrung verbessern. Dazu gehören Passwort-Authentifizierung, Rewriting, URL, Caching und Sicherheit.

  • Gzip-Komprimierung und Dekomprimierung
  • Bandbreitenbeschränkung
  • Perl-, PHP-, Lua-Skripte 
  • Handhabung statischer Dateien
  • Dynamisch ladbare Module
  • Auto-Indizierung
  • .htaccess
  • IPv6-kompatibel
  • HTTP/2-Unterstützung
  • FTP-Verbindungen
  • Ausgleich der Auslastung der Server
  • Sitzungsverfolgung
  • URL-Rewriting
  • Geolokalisierung basierend auf der IP-Adresse


Letzte Worte

Für viele Webseiten ist Apache eine unverzichtbare Komponente, die nicht nur für die Technik, sondern auch für ein reibungsloses Benutzererlebnis sorgt. Wenn du jemals in Erwägung ziehen solltest, eine eigene Website zu erstellen, solltest du das, was du heute gelernt hast, im Hinterkopf behalten.