APACHE Webserver im BS2000/OSD Ausgabe Seiten April 2009 4 APACHE – der meistgenutzte Webserver der Welt Der weltweit meist genutzte Webserver Apache (siehe www.netcraft.com) steht für die Business-Server BS2000/OSD in der neuen Version 2.2 bereit. Wiederum bietet diese Version eine Reihe neuer Funktionen und Programme. Dadurch werden für Webserver auf BS2000/OSD neue Einsatzbereiche erschlossen und die Innovation von bestehenden BS2000-Anwendungen massiv unterstützt. Web-Programmierer können somit leicht Web-Anwendungen im BS2000 entwickeln und betreuen. Insbesondere kann auf eine große Anzahl fertiger Lösungen im Web zurückgegriffen werden. APACHE (BS2000/OSD) V2.2 basiert auf der offiziellen Freigabeversion Apache 2.2.8 der Apache Software Foundation und enthält zusätzliche aktuell relevante Sicherheitskorrekturen. APACHE (BS2000/OSD) V2.2 ist wie die Vorgängerversion kostenfrei erhältlich und kann zusätzlich WWW-Seiten auf der Basis des SSLProtokolls verschlüsselt übertragen und damit BS2000-Server für sensitive Anwendungsbereiche tauglich machen. Das kostenpflichtige Produkt ”interNet Security V1.3 (BS2000/OSD)” kann somit ersatzlos entfallen und wird nicht mehr angeboten. Ab BS2000/OSD V8.0 ist APACHE (BS2000/OSD) V2.2 Bestandteil der BS2000/OSDLiefereinheit. WWW-Server APACHE Inhalt Komplette JAVA-Servlet-Unterstützung durch Tomcat SESAM- und Oracle SQL-Datenbank-Anschluss mit PHP Perl WebDAV Weitere Verbesserungen Stand der Beschreibung: März 2008 2 2 2 2 3 White Paper ⏐ Ausgabe: April 2009 ⏐ APACHE Webserver im BS2000/OSD Seite 2 / 4 Komplette JAVA-Servlet-Unterstützung durch Tomcat Apache Tomcat (nachfolgend kurz Tomcat) stellt eine Ablauf-Umgebung für über das Web ansprechbaren Java-Code (Servlets) bereit, ist also mit anderen Worten ein Servlet-Container. Außerdem kann er mithilfe des JSP-Compilers Jasper JavaServer-Pages (statischer Inhalt wie z.B. HTML mit eingebettetem Java-Code) in Servlets umwandeln, die dann zum Ablauf gebracht werden. Weiterhin kann er als normaler Web-Server für statische Inhalte dienen, obwohl für diesen Zweck der Apache-Webserver besser geeignet ist. Tomcat besitzt zwei Konnektoren, HTTP-Konnektor und AJP-Konnektor. Der erste dient für den direkten Zugang oder für den Betrieb hinter einem Web-Server-Proxy (z.B. Apache mit mod_proxy). Der AJP-Konnektor dient zur performanten Anbindung an einen Web-Server, der die Auslieferung statischer Inhalte selbst übernimmt. APACHE V2.2 ermöglicht auf diese Weise über Tomcat die Unterstützung von JAVA-Servlets und JAVA-Server-Pages in Ihrer Web-Präsentation. JAVA-Servlets sind JAVA-Anwendungen, die in der JAVA-Umgebung des Servers ablaufen. Damit wird der Zugriff auf alle lokalen Resourcen des Servers möglich, z.B. auf SESAM- oder Oracle-Datenbanken mit JDBC ("Java Database Connectivity"). Das Ergebnis der JAVA-Anwendung wird in Form von HTML-Code an den Client übertragen, der somit keine JAVAAblaufumgebung benötigt. JAVA-Servlets laufen als eigene Anwendung unter Kontrolle der JVM ("JAVA Virtual Machine") ab und kommunizieren mit dem Webserver über eine Socket-Verbindung. Java-Server-Pages erlauben die Einbettung von JAVA-Code direkt in HTML-Dateien, womit die Erstellung und die Wartung dieser Seiten wesentlich erleichtert wird. Der JAVA-Code wird dabei automatisch beim ersten Aufruf kompiliert. Das Ergebnis wird solange wiederverwendet, bis eine Sourcecodeänderung erfolgt. Wie bei JAVA-Servlets steht die gesamte JAVAFunktionalität einschließlich Anbindung von Datenbanken über JDBC zur Verfügung. JAVA-Applets dagegen sind JAVA-Anwendungen, die vom Server auf den Client übertragen werden und in der JAVAUmgebung des Clients ablaufen. SESAM- und Oracle SQL-Datenbank-Anschluss mit PHP PHP ("PHP: Hypertext Preprocessor") ist eine serverseitig interpretierte, in HTML eingebettete Skriptsprache. Sie wurde speziell für die WWW-Anwendungsentwicklung entworfen, ist einfach erlernbar und bietet mächtige Werkzeuge zur Erstellung von WebSeiten mit dynamischem Inhalt. Die Syntax ist ähnlich zu C, Java und Perl, erweitert durch PHP-eigene Features, insbesondere zum Zugriff auf Datenbanken. In APACHE V2.2 stehen mit PHP eine ganze Reihe von Funktionen bereit, die auch die Bearbeitung von SESAM- und OracleDatenbanken aus PHP-Skripts heraus erlauben. Auf einfache Art können Inhalte bestehender Datenbanken im Web bereitgestellt werden, aber auch schreibende Zugriffe sind möglich. Neue Einträge können in die Datenbank aufgenommen, bestehende Einträge geändert oder gelöscht werden. Der PHP-Code wird ausschließlich auf dem Server ausgeführt, zum Client wird nur HTML-Code übertragen. Damit bleibt die Anwendungslogik dem Webnutzer verborgen, sodass auch erhöhten Sicherheitsanforderungen voll entsprochen wird. Perl Perl ("practical extraction and reporting language"), eine aus dem UNIX-Umfeld bekannte Skriptsprache zur Ablaufautomatisierung, hat im Internet weiter an Bedeutung gewonnen. Perl ist nicht auf einen bestimmten Einsatzzweck spezialisiert, sondern durch zahllose Module und Erweiterungen universell einsetzbar. Die Syntax ist an C- und ShellSkriptsprachen angelehnt. Kenner schätzen den Komfort und den großen Funktionsumfang der Sprache. Darüber hinaus steht im Internet eine ständig wachsende Anzahl von fertigen Perl-Modulen für alle möglichen Einsatzfälle zur Verfügung. Perl ist in den APACHE Webserver voll integriert, sodass eine hoch performante Ausführung der Skripts garantiert ist. Darüber hinaus ist Perl auch standalone - d.h. ohne APACHE - installier- und nutzbar, z.B. zur Ablaufautomatisierung in POSIX. WebDAV WebDAV ("Web-based Distributed Authoring and Versioning") ist ein von der Internet Engineering Task Force (IETF) verabschiedeter Standard. Mit WebDAV wird eine einfache und sichere Verwaltung von Dokumenten auf Basis von WebTechnologie ermöglicht. In Microsoft Produkten ist ein WebDAV-Anschluss ebenfalls integriert. WebDAV erlaubt Nutzern an unterschiedlichen Orten den Zugriff auf zentrale Dokumente, die anschließend wie lokale Dokumente bearbeitet werden können. Sicherheitsvorkehrungen sorgen dafür, dass mehrere Nutzer nicht gleichzeitig das selbe Dokument bearbeiten können. Zugriffsberechtigungen werden über APACHE-Standardmechanismen vergeben. Neben dem Zugriff auf Einzeldokumente können auch ganze Verzeichnishierarchien bzw. Namensräume bearbeitet werden. WebDAV ist ganz hervorragend geeignet zur Verwaltung von Webinhalten. Gerade auf BS2000/OSD Systemen, die mit EBCDIC-basiertem Code arbeiten, erleichtert WebDAV erheblich die Pflege des Webinhalts. Dokumente können im direkten Zugriff, z.B. auf einem ASCII-basierten Windows-PCs, bearbeitet werden. Separate Filetransfers der geänderten Dokumente zum BS2000/OSD entfallen. In Office 2000 werden von WebDAV verwaltete Dokumente fast so einfach wie lokale Dokumente geöffnet. Zusätzlich zum Dateinamen ist nur die IP-Adresse des WebDAV-Servers sowie der Dokumentenpfad anzugeben. White Paper ⏐ Ausgabe: April 2009 ⏐ APACHE Webserver im BS2000/OSD Seite 3 / 4 Weitere Verbesserungen Neben diesen Erweiterungen gibt es zahlreiche weitere Verbesserungen in APACHE (BS2000/OSD) V2.2 : Erweiterungen in Version 2.2 gegenüber V1.3, die die Apache-Basis bereits mitbringt: Neues Apache API Das API für Module hat sich stark verändert. Die meisten der Sortierungs-/Prioritätsprobleme von Modulen bei 1.3 sollten nun verschwunden sein. In der Version 2 wird hiervon vieles automatisch durchgeführt. Die Modulsortierung wird jetzt über einen pre-hook vorgenommen, um mehr Flexibilität zu bieten. Außerdem wurden neue API-Calls hinzugefügt, die zusätzliche Modulfähigkeiten zur Verfügung stellen, ohne den Apache-Kern anpassen zu müssen. IPv6-Unterstützung Auf Systemen, bei denen die zugrundeliegende Apache Portable Runtime-Bibliothek IPv6 unterstützt, bekommt Apache standardmäßig IPv6 Listening Sockets. Zusätzlich unterstützen die Konfigurationsanweisungen Listen, NameVirtualHost und VirtualHost numerische IPv6-Adressangaben (z.B., "Listen [2001:db8::1]:8080"). Filterung Apache-Module können jetzt als Filter entwickelt und zur Filterung des ein- und ausgehenden Datenstroms des Servers eingesetzt werden. Hierdurch kann beispielsweise die Ausgabe von CGI-Skripten durch den INCLUDES-Filter von mod_include bearbeitet werden und so Server-Side Include-Anweisungen ausgeführt werden. Das Modul mod_ext_filter erlaubt externen Programmen als Filter zu agieren, in der gleichen Weise wie CGI-Programme als Eingabe dienen können. Mehrsprachige Fehlermeldungen Fehlermeldungen an den Browser, stehen jetzt als SSI-Dokumente in verschiedenen Sprachen zur Verfügung. Sie können bei Bedarf durch den Administrator angepasst werden, um ein einheitliches Design zu erreichen. Vereinfachte Konfiguration Viele der verwirrenden Konfigurationsanweisungen wurden vereinfacht. Die oft für Verwirrung sorgenden Port- und BindAddress-Anweisungen wurden entfernt. Ausschließlich die Listen-Anweisung wird nun zum Setzen von IP-Addressen und Portnummern benutzt. Der Servername und die Portnummer, die für Weiterleitungen und zur Erkennung virtueller Server verwendet werden, werden über die ServerName-Anweisung konfiguriert. SSL- und DAV-Module integriert Die SSL- und DAV-Module haben jetzt regulären Einzug in die offizielle Apache-Codebasis gefunden und werden nun durch die Apache-Entwickler gepflegt und weiterentwickelt. Beide Module wurden überarbeitet und funktionell erweitert. Authentifizierung / Autorisierung Die gebündelten Authentifizierungs- und Autorisierungsmodule wurden überarbeitet. Das neue Modul mod_authn_alias vereinfacht bestimmte Authentifizierungskonfigurationen erheblich. Weitere Informationen über die Auswirkungen dieser Änderungen auf Benutzer und Modulentwickler finden Sie unter module name changes und the developer changes. Cache-Funktionalität htcacheclean wurde zum Bereinigen von mod_disk_cache-Setups eingeführt. Teil-Konfigurationen Die Standardkonfiguration wurde vereinfacht und modularisiert. Teil-Konfigurationen, die für die Aktivierung häufig genutzter Funktionen eingesetzt werden können, sind jetzt Teil des Bundle mit Apache und lassen sich der Hauptserverkonfiguration einfach hinzufügen. Graceful Stop (Geordnetes Beenden) Die Multi-Prozessor-Module prefork, worker und event ermöglichen nun ein geordnetes Beenden von httpd über das graceful-stop-Signal. Die Anweisung GracefulShutdownTimeout wurde hinzugefügt, damit ein optionales Timeout angegeben werden kann, nach dem httpd unabhängig vom Status bearbeiteter Requests beendet wird. Proxy-Funktionalität Das neue Modul mod_proxy_balancer bietet Lastverteilungsdienste für mod_proxy. Das neue Modul mod_proxy_ajp bietet zusätzlichen Support für Apache JServ Protocol Version 1.3 für Apache Tomcat. Bibliothek für reguläre Ausdrücke aktualisiert Es ist jetzt eine aktualisierte Version der Perl Compatible Regular Expression Library (PCRE) enthalten. Bei der Auswertung aller regulären Ausdrücke wird nun die leistungsfähigere Syntax von Perl 5 verwendet. Intelligente Filterung mod_filter führt die dynamische Konfiguration für die Ausgabe-Filterung ein. Dies ermöglicht das bedingte Einfügen von Filtern auf der Basis beliebiger Request oder Response Header oder Umgebungsvariablen. Support großer Dateien httpd unterstützt nun auf modernen 32-Bit Unix-Systemen Dateien, die größer als 2 GB sind. Es wurde auch Support für die Handhabung von Dateioperationen > 2 GB hinzugefügt. SQL Datenbank-Unterstützung mod_dbd, zusammen mit dem apr_dbd-Framework, stellt eine direkte SQL-Unterstützung für Module zur Verfügung, die dies benötigen. Unterstützt auch Verbindungsbündelung in Multi-Prozessor-Module. White Paper ⏐ Ausgabe: April 2009 ⏐ APACHE Webserver im BS2000/OSD Seite 4 / 4 Erweiterungen in Version 2.2 im Rahmen der BS2000-Anpassungen: Unicode-Erweiterung APACHE (BS2000) V2.2 unterstützt auch die BS2000-spezifische Unicode-Variante UTF-E (modifiziertes UTF-8), die diversen 8-bit-EBCDIC-DF04, die 7-bit-äquivalenten nationalen EBCDIC-DF03 Codevarianten und die 8-bit ISO-Codes 8859x und eine Vielzahl anderer standardisierter Zeichensätze, sowie die Umwandlung zwischen diesen Code-Sets bei Ein- und Ausgabe. SDF-Kommandoschnittstelle In der Liefereinheit APACHE (BS2000) V2.2 wird auch eine SDF-Syntaxdatei mit ausgeliefert, mit deren Hilfe die Kommandos zum Starten, Restarten, Stoppen und zur Statusabfrage direkt von TSOS oder SYSROOT als SDF-Kommandos ausgeführt werden können. Hilfsprogramme Mitausgelieferte Hilfsprogramme erlauben es dem Webserver-Betreiber, im POSIX explizite Zeichensatzkonversionen von Dateien durchzuführen, SSL-Zertifikate zu erzeugen und SQLite3-Datenbanken zu erstellen und zu pflegen. Modulare Installation Bei der Installation werden nur die Komponenten des Produkts installiert, die vom Kunden ausgewählt und benötigt werden. Damit wird unnötige Speicherplatzbelegung vermieden. Interaktive Installation Dank der neuen interaktiven Installation kann die Grund-Konfiguration bereits während der POSIX-Installation durchgeführt werden, so dass nach Abschluss der Installation der Webserver optional sofort anstartet. Bei Installation der Aufsatzmodule für PHP- und Perl-Unterstützung wird das neu installierte Modul auf Wunsch sogleich aktiviert und steht somit sofort zur Verfügung. Optimierte SX-Unterstützung Auf SPARC-basierten Maschinen wird für optimierten Durchsatz nun SPARC-Code ausgeführt. Alle Rechte vorbehalten, insbesondere gewerbliche Schutzrechte. Änderung von technischen Daten sowie Lieferbarkeit vorbehalten. Haftung oder Garantie für Vollständigkeit, Aktualität und Richtigkeit der angegebenen Daten und Abbildungen ausgeschlossen. Wiedergegebene Bezeichnungen können Marken und/oder Urheberrechte sein, deren Benutzung durch Dritte für eigene Zwecke die Rechte der Inhaber verletzen kann. Weitere Einzelheiten unter ts.fujitsu.com/terms_of_use.html Copyright © Fujitsu Technology Solutions GmbH 2009 Herausgegeben durch: Erwin Fischer Telefon: ++49 (0)89 3222 2621 Fax: ++49 (0)89 3222 329 2621 [email protected] de.ts.fujitsu.com/bs2000 Partner login partners.ts.fujitsu.com/bs2000