Apache 2 - das ist anders, das ist neu
Nachfolge-Regelung
von Thomas Grahammer
Erschienen im Linux-Magazin
2002/10
Jetzt oder erst in ein paar Monaten steht für Administratoren der Wechsel vom Apache-Server 1.3 zu 2 ins Tipi. Dieser Beitrag nennt die wichtigen Neuerungen und gibt Entscheidungshilfen.
Nach zweieinhalb Jahren Entwicklungszeit hat die Apache Software Foundation[1] mit der Version 2.0.35 im April die neue Generation Ihres Webservers [2] für "die Allgemeinheit nutzbar" erklärt[3]. Zum Redaktionsschluss dieses Hefts war 2.0.40 aktuell. Doch offenbar trauen sich viele Administratoren nicht an eine Umstellung. Dieser Artikel benennt für Unentschlossene die Vorteile des Neuen und für Umsteiger die Fallstricke.
Was ist neu?
Augenfällig ist zunächst ein ganzer Strauß neuer Funktionen in Apache 2.0:
- Build-System: Das Build-System setzt nun ganz auf Autoconf und Libtool. Die Installation läuft nach dem Auspacken wie gewohnt: »./configure --prefix= Prefix«, ohne die »prefix«-Option ist der Zielpfad »/usr/local/ apache2«. Es folgen »make« und »make install«. Ein Ansi-C-Compiler wie GCC ist dazu nötig, Perl ab Version 5.003 optional. Module werden wie bei Apache 1.3 entweder einkompiliert (»--enable- Module«) oder zur Laufzeit als Dynamic Shared Objects (»--enable- Module=shared«) geladen. Zum Erzeugen von DSOs gibt's das neue Apache Extension Tool »apxs«.
- Konfiguration: Zur Konfiguration ändert der Administrator die Datei » Prefix/conf/httpd.conf«. In ihr wurden viele der bisher verwirrenden Konfigurationsanweisungen vereinfacht oder wie die »Port«- und »BindAddress«-Anweisungen ganz entfernt. Ausschließlich die »Listen«-Anweisung dient fortan zum Setzen von IP-Adressen und Portnummern. Der Servername und die Portnummer, die für Weiterleitungen und Erkennung virtueller Server verantwortlich zeichnen, konfiguriert künftig die »ServerName«-Anweisung.
- IPv6: Auf Systemen, bei denen die zugehörige Portable-Runtime-Bibliothek (siehe Abschnitt über APRs) IPv6 unterstützt, benutzt Apache IPv6 Listening Sockets. Zusätzlich beherrschen die Konfigurationsanweisungen »Listen«, »NameVirtualHost« und »VirtualHost«-IPv6-Adressangaben, zum Beispiel »Listen [fe80::1]:8080«.
- Module: Mod_ssl ist jetzt offizieller Apache-Bestandteil. Mod_proxy ist großteils neu geschrieben, wobei viele Funktionen in mehrere Mod_*cache-Module abgewandert sind. Neu ist der Kompressor Mod_deflate, der potenziell Mod_gzip (siehe Beitrag ab Seite 39) ersetzt.
- Filterung: Apache-Module lassen sich jetzt als Filter der ein- und ausgehenden Datenströme einsetzen. So können beispielsweise die Ausgaben von CGI-Skripten durch den »INCLUDES«-Filter von Mod_include bearbeitet und damit Server-seitige Include-Anweisungen ausgeführt werden.
- Mehrsprachig: Fehlermeldungen, die an die Client-Browser gehen, speichert Apache als SSI-Dokumente in mehreren Sprachen. Der Administrator kann sie auch anpassen, um ein einheitliches Design zu erreichen.
- Multi-Protokoll: Apache 2.0 stellt die Basis bereit, um mehrere Protokolle zu verarbeiten. (Die Dokumentation für dieses Feature ist leider derart dürftig, dass bis zum Redaktionsschluss seine praktische Bedeutung nicht zu ermitteln war.)

|
bu1Abbildung 1: Die Standardmodule der Version 1.3 bringt Apache 2.0 zwar ausnahmslos mit, die alten Third-Party-Module laufen aber zunächst nicht.
|
Unter der Haube: Gestern und heute
Bis zur Version 1.2 unterstützte Apache nur Unix-Betriebssysteme. Sie sind im Gegensatz zu Windows in der Lage, Prozesse zu kopieren (das so genannte Forking). Apache arbeitete als so genannter Preforking-Server: Der gestartete Vater- Prozess legt zu Beginn eine in der Konfigurationsdatei angegebene Anzahl von Kopien seiner selbst an, die auf eingehende HTTP-Anfragen warten. Falls mehr Anfragen eingehen, als es Prozesse gibt, werden rechtzeitig neue Kopien des Ursprungsprozesses angelegt.
Apache wurde in der Version 1.3 relativ mühsam auf Windows-Betriebssysteme (auch auf Netware 5 und IBMs Transaction Processing Facility) portiert. Dazu schrieben Entwickler die komplette Prozess-Engine neu. Unter Windows läuft die so genannte Thread-Version von Apache 1.3, unter Unix/Linux die Prozess-Variante.
Um Apache 2.0 leichter portierbar zu machen, trennten die Entwickler den plattformspezifischen Code vom restlichen Apache-Code in den Sourcen des APR und der MPMs (siehe unten). Diese Kapselung macht es auch leichter, Plattform-Optimierungen vorzunehmen.
| Whitepaper |
|
The Role of Open Source in Data Integration
Obwohl in den letzten Jahren viele technische Fortschritte erzielt werden konnten, verfügen die meisten Datenintegrationsprozesse nach wie vor nur über eine sehr begrenzte Automatisierung. Das vorliegende White Paper von dem Industry Analyst Mark Madson wird zunächst ein grundlegendes Verständnis von Daten Integration vermitteln, die Vorzüge von Open Source Lösungen für Daten Integration erläutern und Ihnen professionelle Empfehlungen geben, damit Sie Ihre Integrationsjobs noch einfacher und produktiver gestalten können.
Download PDF (Registrierung erforderlich)
|
|
Open Source Datenintegration in der Praxis: Fallstudien und Anwendungsbeispiele (Folge 2)
Der zweite Teil des Open Source Datenintegration in der Praxis: Fallstudien und Anwendungsbeispiele White Papers beleuchtet anhand weiterer ausgewählter Case Studies die Implementierung von Open Source Datenintegration in der Praxis und benennt die daraus resultierenden Vorteile.
Download PDF (Registrierung erforderlich)
|
Dieser Online-Artikel kann Links enthalten, die auf nicht mehr vorhandene Seiten verweisen. Wir ändern solche "broken links"
nur in wenigen Ausnahmefällen. Der Online-Artikel soll möglichst unverändert der gedrucken Fassung entsprechen.
|