Apache HTTP Server: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
 
(52 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
'''Apache HTTP Server''' - Beliebter [[:Kategorie:Server|Webserver]] im [[Internet]]
'''Apache HTTP Server''' - Weit verbreiteter Webserver im Internet


== Beschreibung ==
== Beschreibung ==
; Apache HTTP Server
Einer der meistbenutzten [[Webserver]] im [[Internet]]
* ist ein [[Open Source|quelloffenes]] und freies Produkt der [[Apache Software Foundation]] und einer der meistbenutzten [[Webserver]] im [[Internet]].
* Häufig als [[LAMP (Softwarepaket) | LAMP-System]]
* Neben Faktoren wie Leistungsfähigkeit, Erweiterbarkeit, Sicherheit, Lizenzkosten-freiheit und dem Support durch eine sehr große Community ist seine langjährige Verfügbarkeit für unterschiedlichste [[Betriebssystem|Betriebssysteme]] einer der Gründe für seine hohe Verbreitung, am häufigsten wird er als [[LAMP (Softwarepaket)|LAMP-System]] eingesetzt
* [[Open Source|Quelloffenes]] und freies Produkt der [[Apache Software Foundation]]
 
; Eigenschaften
{|class="wikitable options"
| Hohe Verbreitung ||
|-
| Leistungsfähig ||
|-
| Erweiterbar ||
|-
| Sicherheit ||
|-
| [[Frei Software]] ||
|-
| Support durch große Community ||
|-
| Langjährige Verfügbarkeit ||
|-
| Unterschiedlichste [[Betriebssystem|Betriebssysteme]] ||
|}


=== Entstehung ===
=== Entstehung ===
Eine Gruppe von acht Entwicklern begann 1994 den [[Webserver]] [[National Center for Supercomputing Applications|NCSA]] HTTPd zu erweitern
{| class="wikitable options"
* Dies waren im Einzelnen: [[Brian Behlendorf]], [[Roy Fielding|Roy T. Fielding]], Rob Hartill, David Robinson, Cliff Skolnick, Randy Terbush, Robert S. Thau und Andrew Wilson mit Unterstützung von Eric Hagberg, Frank Peters und Nicolas Pioch
|-
| Gründungsprojekt || [[Apache Software Foundation]]
|-
| Entwicklungsgrundlage 1994 || HTTPd [[Webserver]] des [[National Center for Supercomputing Applications|NCSA]]  
|-
| Erste Version 1995 || [[Apache HTTP Server]]
|}


Sie gaben dem Ergebnis ihrer Arbeit den Namen Apache HTTP Server und veröffentlichten diesen im April 1995
; Name
* Er war das Gründungsprojekt der [[Apache Software Foundation]]
: Der Name wurde aus Respekt vor dem nordamerikanischen Indianerstamm der [[Apachen]] gewählt
:"A patchy server"
:* „zusammengeflickter Server“
:* Diese Deutung entstand, weil die erste Version des Apache HTTP Servers eine [[Patch (Software)|gepatchte]] Version des [[National Center for Supercomputing Applications|NCSA]] HTTP Servers war


=== Namensherkunft ===
== Eigenschaften und Funktionen ==
Der Name wurde aus Respekt vor dem nordamerikanischen Indianerstamm der [[Apachen]] gewählt. Nicht korrekt ist, dass der Name ein Homophon von „{{lang|en|a patchy server}}“ sei, was so viel wie „ein zusammengeflickter Server“ bedeuten würde
; Betriebssysteme
* Diese Deutung entstand durch den Umstand, dass der Apache HTTP Server ursprünglich eine [[Patch (Software)|gepatchte]] Erweiterung des alten [[National Center for Supercomputing Applications|NCSA]] HTTP Servers war
* [[Unix]]
* [[Linux]]
* [[Windows]]
* und weiterer


== Eigenschaften und Funktionen ==
; Multiprocessing-Module
Neben [[Unix]] und [[Linux]] unterstützt Apache [[Win32]], [[NetWare]] sowie eine Vielzahl weiterer Betriebssysteme
Hinzu kommen verschiedene [[Multiprocessing-Module]] ([[MPM]]), die je nach Plattform unterschiedliche Lösungen für die gleichzeitige Bedienung mehrerer [[Client]]-Anfragen anbieten:  
* In Apache 2.4 wurde der Support für ältere, lange schon nicht mehr weiter entwickelte Betriebssysteme wie [[BeOS]], [[Transaction Processing Facility|TPF]] und [[A/UX]] beendet. In Version 2.0 wurde die Stabilität und Geschwindigkeit des Servers – vor allem auf Nicht-Unix-Systemen – erheblich verbessert: Die Bibliothek [[Apache Portable Runtime]] (APR) stellt eine Verallgemeinerung wichtiger Systemaufrufe zur Verfügung, sodass die individuellen Stärken des jeweiligen [[Betriebssystem]]s ausgenutzt werden können
* Beispielsweise setzt das MPM prefork für klassische Unix-Systeme auf [[Fork (Unix)|Forking]] von Prozessen, während mpm_winnt für die unter Windows empfehlenswerteren Threads optimiert ist
* Hinzu kommen verschiedene Multiprocessing-Module (MPM), die je nach Plattform unterschiedliche Lösungen für die gleichzeitige Bedienung mehrerer [[Client]]-Anfragen anbieten: Beispielsweise setzt das MPM prefork für klassische Unix-Systeme auf [[Fork (Unix)|Forking]] von Prozessen, während mpm_winnt für die unter Windows empfehlenswerteren Threads optimiert ist


Der Apache-Webserver ist modular aufgebaut: Durch entsprechende [[Modul (Software)|Module]] kann er beispielsweise die [[Kommunikation]] zwischen [[Webbrowser|Browser]] und Webserver verschlüsseln ([[Transport Layer Security|mod_ssl]]), als [[Proxyserver]] eingesetzt werden (mod_proxy) oder komplexe Manipulationen von [[Hypertext Transfer Protocol|HTTP]]-[[Kopfdaten]] ([[mod headers]]) und [[Uniform Resource Locator|URLs]] ([[mod rewrite]]) durchführen
; Modularer Aufbau
Durch entsprechende [[Modul (Software)|Module]] kann er beispielsweise die [[Kommunikation]] zwischen [[Webbrowser|Browser]] und Webserver verschlüsseln ([[Transport Layer Security|mod_ssl]]), als [[Proxyserver]] eingesetzt werden (mod_proxy) oder komplexe Manipulationen von [[Hypertext Transfer Protocol|HTTP]]-[[Kopfdaten]] ([[mod headers]]) und [[Uniform Resource Locator|URLs]] ([[mod rewrite]]) durchführen


; Serverseitige Skriptsprachen
Der Apache bietet die Möglichkeit, mittels serverseitiger [[Skriptsprache]]n Webseiten dynamisch zu erstellen
Der Apache bietet die Möglichkeit, mittels serverseitiger [[Skriptsprache]]n Webseiten dynamisch zu erstellen
* Häufig verwendete Skriptsprachen sind [[PHP]], [[Perl (Programmiersprache)|Perl]] oder [[Ruby (Programmiersprache)|Ruby]]
* Häufig verwendete Skriptsprachen sind [[PHP]], [[Perl (Programmiersprache)|Perl]] oder [[Ruby (Programmiersprache)|Ruby]]
* Weitere Sprachen sind [[Python (Programmiersprache)|Python]], [[JavaScript]] (z. B. [[V8 (JavaScript-Implementierung)|V8CGI]]), [[Lua]], [[Tcl]] und .NET (mit [[ASP.NET]] oder [[Mono (Software)|Mono]])
* Weitere Sprachen sind [[Python (Programmiersprache)|Python]], [[JavaScript]] (z. B. [[V8 (JavaScript-Implementierung)|V8CGI]]), [[Lua]], [[Tcl]] und .NET (mit [[ASP.NET]] oder [[Mono (Software)|Mono]])
* Diese sind kein Bestandteil des Webservers, sondern müssen ebenfalls entweder als Module eingebunden werden oder über das [[Common Gateway Interface|CGI]] angesprochen werden, da Apache im Gegensatz zu beispielsweise [[nginx]] modulbasiert ist
* Diese sind kein Bestandteil des Webservers, sondern müssen ebenfalls entweder als Module eingebunden werden oder über das [[Common Gateway Interface|CGI]] angesprochen werden, da Apache im Gegensatz zu beispielsweise [[nginx]] modulbasiert ist
* Die Module können jederzeit aktiviert oder deaktiviert werden. Über das bei der Apache-Installation enthaltene mod_include kann [[Server Side Includes]] (SSI) ausgeführt werden
* Die Module können jederzeit aktiviert oder deaktiviert werden. Über das bei der Apache-Installation enthaltene mod_include kann [[Server Side Includes]] (SSI) ausgeführt werden
* Damit ist es möglich, einfache dynamische Webseiten zu erstellen und den Verwaltungsaufwand von statischen Webseiten zu minimieren
* Damit ist es möglich, einfache dynamische Webseiten zu erstellen und den Verwaltungsaufwand von statischen Webseiten zu minimieren


; Lizenz
Der Apache HTTP Server ist, wie alle Programme der Apache Software Foundation, eine [[freie Software]]
Der Apache HTTP Server ist, wie alle Programme der Apache Software Foundation, eine [[freie Software]]
* Derzeit wird noch die stabile Version 2.4.x unterstützt und somit beispielsweise mit Sicherheitsupdates versorgt
* Derzeit wird noch die stabile Version 2.4.x unterstützt und somit beispielsweise mit Sicherheitsupdates versorgt
Zeile 41: Zeile 75:
=== Versionen ===
=== Versionen ===
; Apache 1.x
; Apache 1.x
* Diese Version wurde erstmals im Jahre [[1995]] veröffentlicht.
Diese Version wurde erstmals im Jahre [[1995]] veröffentlicht
* Die Weiterentwicklung des letzten Entwicklungszweiges [[#Apache 1.3|1.3.x]] lief im Februar 2010 aus.
* Die Weiterentwicklung des letzten Entwicklungszweiges [[#Apache 1.3|1.3.x]] lief im Februar 2010 aus
* Seitdem wurde Version 1 nur noch, falls erforderlich, mit Sicherheitsupdates versorgt.
* Seitdem wurde Version 1 nur noch, falls erforderlich, mit Sicherheitsupdates versorgt
* Inzwischen ist auch die Versorgung mit Sicherheitsupdates eingestellt
* Inzwischen ist auch die Versorgung mit Sicherheitsupdates eingestellt


; Apache 2.x
; Apache 2.0
* Diese Version wurde erstmals im März 2000 veröffentlicht.
Diese Version wurde erstmals im März 2000 veröffentlicht
* Von dieser Version wird nur noch der Entwicklungszweig [[#Apache 2.4|2.4]] mit Sicherheitsupdates und Weiterentwicklungen versorgt
* In Version 2.0 wurde die Stabilität und Geschwindigkeit des Servers – vor allem auf Nicht-Unix-Systemen – erheblich verbessert:
* Die Bibliothek [[Apache Portable Runtime]] (APR) stellt eine Verallgemeinerung wichtiger Systemaufrufe zur Verfügung, sodass die individuellen Stärken des jeweiligen [[Betriebssystem]]s ausgenutzt werden können
 
; Apache 2.4
In Apache 2.4 wurde der Support für ältere, lange schon nicht mehr weiter entwickelte Betriebssysteme wie [[BeOS]], [[Transaction Processing Facility|TPF]] und [[A/UX]] beendet
 
=== Dokumentation ===
; Installation
# apt install apache2-doc
 
; Aufruf
 
Das Handbuch wird je nach Sprachkonfiguration des Webbrowsers, die er im Feld ''Accept-Language'' des [[HTTP]] übermittelt, in der passenden Sprache ausgeliefert, sofern diese verfügbar ist
 
<noinclude>
<noinclude>


Zeile 54: Zeile 101:
=== Siehe auch ===
=== Siehe auch ===
{{Special:PrefixIndex/Apache}}
{{Special:PrefixIndex/Apache}}
==== Dokumentation ====
; Handbuch
* Einige Distributionen (z.&nbsp;B.&nbsp;Ubuntu) liefern es als eigenständiges [[Programmpaket]] (zum Package ''apache2'' gibt es ein Package ''apache2-doc'')
* Das Handbuch wird je nach Sprachkonfiguration des Webbrowsers, die er im Feld ''Accept-Language'' des [[HTTP]] übermittelt, in der passenden Sprache ausgeliefert sofern diese verfügbar ist


==== Links ====
==== Links ====

Aktuelle Version vom 5. September 2024, 08:44 Uhr

Apache HTTP Server - Weit verbreiteter Webserver im Internet

Beschreibung

Einer der meistbenutzten Webserver im Internet

Eigenschaften
Hohe Verbreitung
Leistungsfähig
Erweiterbar
Sicherheit
Frei Software
Support durch große Community
Langjährige Verfügbarkeit
Unterschiedlichste Betriebssysteme

Entstehung

Gründungsprojekt Apache Software Foundation
Entwicklungsgrundlage 1994 HTTPd Webserver des NCSA
Erste Version 1995 Apache HTTP Server
Name
Der Name wurde aus Respekt vor dem nordamerikanischen Indianerstamm der Apachen gewählt
"A patchy server"
  • „zusammengeflickter Server“
  • Diese Deutung entstand, weil die erste Version des Apache HTTP Servers eine gepatchte Version des NCSA HTTP Servers war

Eigenschaften und Funktionen

Betriebssysteme
Multiprocessing-Module

Hinzu kommen verschiedene Multiprocessing-Module (MPM), die je nach Plattform unterschiedliche Lösungen für die gleichzeitige Bedienung mehrerer Client-Anfragen anbieten:

  • Beispielsweise setzt das MPM prefork für klassische Unix-Systeme auf Forking von Prozessen, während mpm_winnt für die unter Windows empfehlenswerteren Threads optimiert ist
Modularer Aufbau

Durch entsprechende Module kann er beispielsweise die Kommunikation zwischen Browser und Webserver verschlüsseln (mod_ssl), als Proxyserver eingesetzt werden (mod_proxy) oder komplexe Manipulationen von HTTP-Kopfdaten (mod headers) und URLs (mod rewrite) durchführen

Serverseitige Skriptsprachen

Der Apache bietet die Möglichkeit, mittels serverseitiger Skriptsprachen Webseiten dynamisch zu erstellen

  • Häufig verwendete Skriptsprachen sind PHP, Perl oder Ruby
  • Weitere Sprachen sind Python, JavaScript (z. B. V8CGI), Lua, Tcl und .NET (mit ASP.NET oder Mono)
  • Diese sind kein Bestandteil des Webservers, sondern müssen ebenfalls entweder als Module eingebunden werden oder über das CGI angesprochen werden, da Apache im Gegensatz zu beispielsweise nginx modulbasiert ist
  • Die Module können jederzeit aktiviert oder deaktiviert werden. Über das bei der Apache-Installation enthaltene mod_include kann Server Side Includes (SSI) ausgeführt werden
  • Damit ist es möglich, einfache dynamische Webseiten zu erstellen und den Verwaltungsaufwand von statischen Webseiten zu minimieren
Lizenz

Der Apache HTTP Server ist, wie alle Programme der Apache Software Foundation, eine freie Software

  • Derzeit wird noch die stabile Version 2.4.x unterstützt und somit beispielsweise mit Sicherheitsupdates versorgt
  • Die Apache-Entwickler empfehlen die Version 2.4.x für den Produktiveinsatz

Distributionen

Versionen

Apache 1.x

Diese Version wurde erstmals im Jahre 1995 veröffentlicht

  • Die Weiterentwicklung des letzten Entwicklungszweiges 1.3.x lief im Februar 2010 aus
  • Seitdem wurde Version 1 nur noch, falls erforderlich, mit Sicherheitsupdates versorgt
  • Inzwischen ist auch die Versorgung mit Sicherheitsupdates eingestellt
Apache 2.0

Diese Version wurde erstmals im März 2000 veröffentlicht

  • In Version 2.0 wurde die Stabilität und Geschwindigkeit des Servers – vor allem auf Nicht-Unix-Systemen – erheblich verbessert:
  • Die Bibliothek Apache Portable Runtime (APR) stellt eine Verallgemeinerung wichtiger Systemaufrufe zur Verfügung, sodass die individuellen Stärken des jeweiligen Betriebssystems ausgenutzt werden können
Apache 2.4

In Apache 2.4 wurde der Support für ältere, lange schon nicht mehr weiter entwickelte Betriebssysteme wie BeOS, TPF und A/UX beendet

Dokumentation

Installation
# apt install apache2-doc
Aufruf

Das Handbuch wird je nach Sprachkonfiguration des Webbrowsers, die er im Feld Accept-Language des HTTP übermittelt, in der passenden Sprache ausgeliefert, sofern diese verfügbar ist


Anhang

Siehe auch

Links

Weblinks
  1. Web Server Survey
  2. http://wiki.apache.org/httpd/FAQ#Why_the_name_.22Apache.22.3F
  3. http://groups.google.de/group/comp.infosystems.www.servers.unix/browse_thread/thread/2f7d053c2cd09729
  4. http://www.apache.org/dist/httpd/Announcement2.4.html
  5. https://de.wikipedia.org/wiki/Apache_HTTP_Server
  6. httpd.apache.org, Offizielle Website (englisch)
  7. Online-Handbuch, mehrsprachig
  8. https://www.bsi.bund.de/cae/servlet/contentblob/477104/publicationFile/30664/Apache_2003_pdf.pdf