Apache 2 - Der populärste Webserver seit Entstehen des Internets

Autor:   |  12.09.2019


Apache 2 Webserver Bei Apache 2 handelt es um einen der ältesten und lange Zeit um den mit Abstand wichtigsten Webserver des Internets. Die Verbreitung der Software erreichte zu ihren Spitzenzeiten einen Marktanteil nahe der 90 Prozent, die einzige erwähnenswerte Konkurrenz bestand ausschließlich aus dem in Microsoft Windows Server integrierten Webserver Internet Information Services (IIS). Die Verbreitung von Apache 2 gemeinsam mit Linux als Betriebssystem gilt als einer der Durchbrüche für die vorher nur in Nischen oder an Universitäten bekannte und verbreitete quelloffene Software entsprechend unterschiedlicher Open Source Lizenzen. Auch wenn der Webserver durch die zunehmende Konkurrenz von Software wie nginx für große Webseiten oder lighttpd für Embedded Devices an Marktanteil und Einfluss verloren hat, hält Apache auch 2019 noch seine Führungsposition mit über 30 Prozent aller aktiven Webseiten. Dicht darauf folgt nginx mit knapp unter 20 Prozent.

Inhalt:

Apache 2 - Ein freier Webserver aus den ersten Jahren des Internets
Aufstieg zum Rückgrat des modernen Internets
Die Datei .htaccess - Eine Besonderheit von Apache 2
Vorteile und Nachteile von Apache 2 gegenüber nginx

Apache 2 - Ein freier Webserver aus den ersten Jahren des Internets

Als sich das Internet ab Beginn der 90er Jahre des vergangenen Jahrhunderts von einem wissenschaftlichen und militärischen zu einem kommerziellen und öffentlichen Netzwerk wandelte, stammten die wenigen verfügbaren Webserver entweder aus Forschungseinrichtungen wie US-amerikanischen Universitäten oder von wenigen kommerziellen Anbietern. Keine Überraschung - immerhin lag der erste Klick auf einen HTTP Link am 6. August 1991 zu diesem Zeitpunkt erst wenige Dutzend Monate zurück. Einer der wenigen Möglichkeiten bestand in dem von dem US-amerikanischen National Center for Supercomputing Applications (NCSA) veröffentlichten Webserver NCSA HTTPd, der acht Programmierern als Grundlage für ihr Projekt diente.

Der Name Apache leitet sich von einer Hommage an die nordamerikanischen Ureinwohner ab - auch wenn Gerüchte immer wieder besagen, er sei in Wahrheit eine Abkürzung der englischen Wendung A Patchy Server (ein geflickter Server) - ein Bezug auf den Ursprung als Erweiterung von NCSA HTTPd. Wegen seiner Stabilität, Vielseitigkeit, Zuverlässigkeit und einfachen Konfiguration - und nicht zuletzt auch wegen seiner kostenlosen Verfügbarkeit - etablierte sich Apache schnell als der wichtigste Webserver des noch jungen Internets. Besonders Studenten und von ihnen gegründete, kleine Start-ups der ersten digitalen Pioniere konnten sich die extrem hohen Lizenzgebühren für kommerzielle Produkte wie Microsoft Windows NT nicht leisten und setzten auf die Kombination des freien Betriebssystems Linux mit Apache.

Aufstieg zum Rückgrat des modernen Internets

Durch die hohe Flexibilität, die breite Unterstützung durch eine interessierte und kompetente Community und eine stetig wachsende Nachfrage etablierte sich Apache schnell als die bevorzugte Lösung für einen technisch fortgeschrittenen, sicheren und stabilen Webserver. Die Software führte zu einigen der wichtigsten Innovationen in der Entwicklung des modernen Internets und begründete in vielen Gesichtspunkten dauerhafte Standards. Auf den Nachfolger Apache 2 gehen einige der wichtigsten Voraussetzungen für einen zuverlässigen und flexiblen Webserver zurück, die bis heute als unverzichtbar gelten:

  • Modulares Design für eine flexible Erweiterung der Funktionalität
  • Regeln für die interne Verarbeitung von öffentlichen Adressen (Rewrite Rules)
  • Unterstützung für die Anbindung externer Skriptsprachen wie Python, Perl oder PHP
  • Zentrale und lokale Konfiguration für unterschiedliche Domains
  • Steigerung der Geschwindigkeit durch temporäre Cache-Speicher
  • Skalierbare Lastverteilung für große Netzwerke etwa als CDN
  • Optionale Unterstützung für Protokolle wie FTP oder WebDAV
  • Integration sicherere Kryptographie über SSL Verschlüsselung

Seine maximale Verbreitung erreichte Apache in dem Jahrzehnt nach der Jahrtausendwende, in dem es zwischenzeitlich mit einem Marktanteil von bis zu 90 Prozent fast die Stellung eines Monopols erreichte. Bestimmte Nachteile insbesondere bei der Geschwindigkeit unter hoher Last und durch einen hohen, nativen Ressourcenverbrauch begünstigten jedoch das Entstehen von Alternativen - allen voran nginx für Content Delivery Networks (CDN) oder anderen Webseiten mit hohem Besucheraufkommen und lighttpd als leichter, effizienter und Ressourcen sparender Webserver für Embedded Devices.

Die Datei .htaccess - Eine Besonderheit von Apache 2

Eine der Gründe für die hohe und bis heute anhaltende Popularität von Apache 2 als Webserver ist die Möglichkeit, die sich für einen Nutzer durch die lokale Konfiguration über eine .htaccess Datei bieten. Es handelt sich praktisch um eine modulare Erweiterung, die eine regelbasierte Umleitung auf hierarchischer Ebene erlaubt. Bei jedem Aufruf überprüft Apache 2 diesen - angefangen mit dem untersten Verzeichnis (Root) - auf die Existenz einer .htaccess Datei innerhalb der Dateistruktur. Ist diese vorhanden, führt der Webserver die darin enthaltenen Anweisungen aus. Mögliche Anwendungen bestehen zum Beispiel aus:

  • Temporäre oder dauerhafte Umleitung bestimmter Adressen auf andere Verzeichnisse oder eine Domain
  • Einrichtung eines zusätzlichen Schutzes durch eine Passwortabfrage für bestimmte Bereiche
  • Umwandlung von dynamischen in absolute Adressen für die SEO
  • Geoblocking auf der Basis der IP-Adresse
  • Kontrolle der Zugriffe nach Provider, Client, Uhrzeit oder anderer Parameter
  • Umschreibung, Sortierung und Filtern der angehängten Parameter

Die .htaccess ist eine der Grundlagen für die enorme Flexibilität von Apache 2. Ihr besonderer Vorteil besteht darin, dass sie Nutzern eine fast unbegrenzte Freiheit verleiht, ohne dass diese erweiterte Rechte für die Manipulation von globalen oder lokalen Konfigurationen benötigen. Für eine individuelle Anpassung reicht der Upload einer einfachen und in Textform verfassten .htaccess Datei in das entsprechende Verzeichnis, in der die gewünschten Regeln definiert werden.

Vorteile und Nachteile von Apache 2 gegenüber nginx

Fast alle der positiven Eigenschaften übernahmen anschließend Konkurrenten wie nginx, beseitigten aber auch einige der entscheidenden Nachteile von Apache. Diese wirkten sich mit steigender Zahl der angebundenen Clients aus, denn durch das Speicher- und Ressourcenmanagement von Apache 2 sinkt dessen Effizienz bei zahlreichen parallelen Verbindungen kontinuierlich an. Problematisch ist, dass dieser Effekt durch das Load Balancing oder CDN zwar abgeschwächt und verteilt, aber nicht beseitigt werden kann.

Vorteile ergeben sich für Apache 2 unter anderem durch seine ausgezeichnete Dokumentation in zahlreichen Sprachen und die nach wie vor unerreichte Flexibilität, die es Nutzern zur Verfügung stellt - unabhängig davon, ob es sich um ein betreutes Webhosting, einen eigenen dedizierten Server oder einen vServer handelt. Das spezielle Konzept der .htaccess Datei gewährleistet eine fast unbeschränkte Freiheit, die keine spezielle Konfiguration oder einen über die üblichen Rechte hinausgehenden Zugriff benötigt. Darüber hinaus erlaubt sie gerade unerfahrenen Nutzern eine individuelle Einrichtung, ohne das Risiko einer globalen Fehlkonfiguration und eine Beeinträchtigung fremder Verzeichnisse zu riskieren.

Foto: TomaszProszek pixabay.com