Apache ist eine Open-Source-, plattformübergreifende und völlig kostenlose Befehlszeilensoftware, die für die Implementierung eines Webservers auf einem Linux- und UNIX-ähnlichen Betriebssystem für die Bereitstellung von Dateien über HTTP- und HTTPS-Protokolle entwickelt wurde .
Die meistgenutzte Web-Server-Software der Welt
Es ist die meistgenutzte Webserver-Software der Welt und bedient Hunderttausende von Websites aus dem Internet. Es ist sehr sicher, leicht wartbar, effizient, wenig Ressourcen und erweiterbar durch Plugins. Apache ist immer mit den neuesten HTTP-Standards kompatibel.
Obwohl Apache nur von erfahrenen Systemadministratoren auf Computern installiert werden sollte, die als Server dienen, kann es auch von normalen Benutzern auf ihren PCs nur zu Testzwecken installiert werden, z. B. Webdesign oder Web-App-Entwicklung.
>Erste Schritte mit Apache
Um Apache auf althergebrachte Weise zu installieren, müssen Sie das neueste stabile Quellpaket herunterladen (beachten Sie, dass mehrere stabile Zweige gleichzeitig verwaltet werden, wie zB 2.2.x oder 2.4.x) und es auf Ihrem Computer speichern. und extrahiert seinen Inhalt mit einem Archiv-Manager-Dienstprogramm.
Öffnen Sie eine Terminalemulator-App, und wechseln Sie zum Speicherort der extrahierten Archivdateien, indem Sie den Befehl & c; & rsquo; Befehl (z. B. cd /home/softoware/httpd-2.4.10) und führen Sie das & lsquo; ./ configure && make & rsquo; Befehl zum Konfigurieren und Kompilieren der Software für Ihr Betriebssystem / Ihre Hardwarearchitektur (zu diesem Zeitpunkt werden 32-Bit- und 64-Bit-CPU-Architekturen unterstützt).
Dann installieren Sie es systemweit, indem Sie das & squo; sudo make install & rsquo; Befehl. Schauen Sie sich nach der Installation die Standardkonfigurationsdatei in /usr/local/apache2/conf/httpd.conf oder /usr/apache2/conf/httpd.conf an und passen Sie die Einstellungen an Ihre Bedürfnisse an (siehe Projekt-Homepage) für Details). Der httpd-Dienst wird normalerweise beim Systemstart automatisch gestartet, wenn Sie ihn zu
Was ist neu in dieser Version hinzugefügt wurden:
- Zu den neuen Funktionen gehören ladbare MPMs, wesentliche Verbesserungen der OCSP-Unterstützung, mod_lua, dynamische Reverse-Proxy-Konfiguration, verbesserte Authentifizierung / Autorisierung, FastCGI-Proxy, neuer Expression Parser und eine Caching-API für kleine Objekte.
Was ist neu in Version 2.4.33:
- Zu den neuen Funktionen gehören Loadable MPMs, wesentliche Verbesserungen der OCSP-Unterstützung, mod_lua, Dynamic Reverse Proxy-Konfiguration, Verbesserte Authentifizierung / Autorisierung, FastCGI Proxy, Neuer Expression Parser und eine Small Object Caching API.
Was ist neu in der Version:
- Zu den neuen Funktionen gehören ladbare MPMs, wesentliche Verbesserungen der OCSP-Unterstützung, mod_lua , Dynamic Reverse Proxy Konfiguration, Verbesserte Authentifizierung / Autorisierung, FastCGI Proxy, Neuer Expression Parser und eine Small Object Caching API.
Was ist neu in Version 2.4.27:
- Zu den neuen Funktionen gehören ladbare MPMs, wichtige Verbesserungen für OCSP Unterstützung, mod_lua, dynamische Reverseproxy-Konfiguration, verbesserte Authentifizierung / Autorisierung, FastCGI-Proxy, neuer Expression Parser und eine Caching-API für kleine Objekte.
Was ist neu in Version 2.4.25:
- Zu den neuen Funktionen gehören ladbare MPMs, wichtige Verbesserungen für OCSP Unterstützung, mod_lua, dynamische Reverseproxy-Konfiguration, verbesserte Authentifizierung / Autorisierung, FastCGI-Proxy, neuer Expression Parser und eine Caching-API für kleine Objekte.
Was ist neu in Version 2.4.23:
- Zu den neuen Funktionen gehören Loadable MPMs, wesentliche Verbesserungen der OCSP-Unterstützung, mod_lua, Dynamic Reverse Proxy-Konfiguration, Verbesserte Authentifizierung / Autorisierung, FastCGI Proxy, Neuer Expression Parser und eine Small Object Caching API.
Was ist neu in Version 2.4.20:
- Zu den neuen Funktionen gehören ladbare MPMs, wichtige Verbesserungen für OCSP Unterstützung, mod_lua, dynamische Reverseproxy-Konfiguration, verbesserte Authentifizierung / Autorisierung, FastCGI-Proxy, neuer Expression Parser und eine Caching-API für kleine Objekte.
Was ist neu in Version 2.4.18:
- Zu den neuen Funktionen gehören ladbare MPMs, wichtige Verbesserungen für OCSP Unterstützung, mod_lua, dynamische Reverseproxy-Konfiguration, verbesserte Authentifizierung / Autorisierung, FastCGI-Proxy, neuer Expression Parser und eine Caching-API für kleine Objekte.
Was ist neu in Version 2.4.17:
- Zu den neuen Funktionen gehören ladbare MPMs, wesentliche Verbesserungen für OCSP Unterstützung, mod_lua, dynamische Reverseproxy-Konfiguration, verbesserte Authentifizierung / Autorisierung, FastCGI-Proxy, neuer Expression Parser und eine Caching-API für kleine Objekte.
Was ist neu in Version 2.4.16:
- Zu den neuen Funktionen gehören Loadable MPMs, wesentliche Verbesserungen der OCSP-Unterstützung, mod_lua, Dynamic Reverse Proxy-Konfiguration, Verbesserte Authentifizierung / Autorisierung, FastCGI Proxy, Neuer Expression Parser und eine Small Object Caching API.
Was ist neu in Version 2.4.12:
- Diese Version von Apache ist unsere neueste GA-Version von die neue Generation des Apache HTTPD 2.4.x-Zweigs und repräsentiert fünfzehn Jahre Innovation durch das Projekt und wird für alle vorherigen Releases empfohlen.
- Diese Version von Apache ist hauptsächlich eine Sicherheits- und Bugfix-Version.
Was ist neu in Version 2.4.10:
- Diese Version von Apache ist hauptsächlich eine Sicherheits-, Funktions- und Bugfix-Version:
- CVE-2014-0117 mod_proxy: Absturz bei der Behandlung von Connection-Header behoben, der einen Denial-of-Service-Angriff gegen einen Reverse-Proxy mit einem Thread-MPM ermöglichte.
- CVE-2014-3523 Behebung eines Dienstverzerrungsfehlers im WinNT MPM (wird in allen Windows-Installationen verwendet). Problemumgehung: AcceptFilter {none | connect}
- CVE-2014-0226 Behebt eine Race-Bedingung in der Scoreboard-Behandlung, die zu einem Pufferüberlauf führen könnte.
- CVE-2014-0118 mod_deflate: Der DEFLATE-Eingabefilter (bläst Anfragekörper auf) begrenzt jetzt die Länge und das Komprimierungsverhältnis von aufgeblähten Anfragekörpern, um die Verweigerung des Dienstes über stark komprimierte Körper zu vermeiden. Siehe Direktiven DeflateInflateLimitRequestBody, DeflateInflateRatioLimit und DeflateInflateRatioBurst.
- CVE-2014-0231 mod_cgid: Repariere einen Denial-of-Service gegen CGI-Skripte, die keine Stdin verbrauchen, was dazu führen könnte, dass HTTPD-Child-Prozesse die Anzeigetafel füllen und den Server hängen. Standardmäßig gilt das Client-E / A-Zeitlimit (Timeout-Anweisung) jetzt für die Kommunikation mit Skripts. Die Anweisung CGIDScriptTimeout kann verwendet werden, um eine andere Zeitüberschreitung für die Kommunikation mit Skripten festzulegen.
- Auch in dieser Version sind einige aufregende neue Funktionen einschließlich;
- Proxy FGI und WebSockets Verbesserungen
- Proxy-Fähigkeit über Handler
- Feinere Kontrolle über die Festlegung von RewriteRules
- Unix Domain Socket (UDS) Unterstützung für mod_proxy Backends.
- Unterstützung für größere gemeinsame Speichergrößen für mod_socache_shmcb
- mod_lua und mod_ssl Erweiterungen
- Unterstützen Sie benannte Gruppen und Rückreferenzen in den Anweisungen LocationMatch, DirectoryMatch, FilesMatch und ProxyMatch.
Was ist neu in Version 2.2.26:
- mod_dav: dav_resource- & gt; uri wird als unverschlüsselt behandelt. Dies war ein unnötiger ABI geändert in 2.2.25 PR 55397 eingeführt.
- mod_dav: Sperren Sie keine Sperren für die übergeordnete Auflistung von COPY-Quell-URI. PR 55304.
- mod_ssl: Überprüfen Sie, ob der SNI-Hostname für den Host-Header die Groß- und Kleinschreibung nicht beachtet. PR 49491.
- mod_ssl: Aktivieren Sie die Unterstützung für ECC-Schlüssel und ECDH-Chiffren. Getestet gegen OpenSSL 1.0.0b3.
- mod_ssl: Ändern Sie den Standardwert für SSLCompression in off, da die Komprimierung in den meisten Setups zu Sicherheitsproblemen führt. (Der sogenannte "CRIME" -Angriff).
- mod_ssl: Kompilierfehler behoben, wenn OpenSSL keine Unterstützung für SSLv2 bietet. Problem wurde in 2.2.25 eingeführt. PR 55194.
- mod_dav: Korrigiert doppelte Codierung von URIs im XML- und Location-Header (verursacht durch unbeabsichtigte ABI-Änderung in 2.2.25). PR 55397.
Was ist neu in Version 2.4.7:
- APR 1.5.0 oder höher ist jetzt für das Ereignis MPM erforderlich.
- slotmem_shm: Fehlererkennung. [Jim Jagielski]
- event: Verwenden Sie die Datenstruktur der Skiplist. [Jim Jagielski]
- mpm_unix: Fügen Sie eine ap_mpm_podx_ * Implementierung hinzu, um Code-Duplikation zu vermeiden und mit trunk auszurichten. [Jim Jagielski]
- Korrigiert mögliche Ablehnung von gültigen MaxMemFree- und ThreadStackSize-Direktiven. [Mike Rumph]
- mod_proxy_fcgi: Entferne die 64K Grenze für die kodierte Länge aller envvars. Eine einzelne envvar mit einer codierten Länge von mehr als 16K wird weggelassen. [Jeff Trawick]
- mod_proxy_fcgi: Behandelt Leseprotokolldaten, die zwischen Paketen aufgeteilt sind. [Jeff Trawick]
- mod_ssl: Verbesserung der Handhabung von ephemeren DH- und ECDH-Schlüsseln, indem benutzerdefinierte Parameter über SSLCertificateFile konfiguriert werden können und standardisierte DH-Parameter für 1024/2048/3072/4096 Bits hinzugefügt werden. Sofern keine benutzerdefinierten Parameter konfiguriert sind, werden die standardisierten Parameter basierend auf der RSA / DSA-Schlüsselgröße des Zertifikats angewendet. [Kaspar Brand]
- mod_ssl, configure: Erfordert OpenSSL 0.9.8a oder höher. [Kaspar Brand]
- mod_ssl: Drop-Unterstützung für Export-Grade-Chiffren mit ephemeren RSA-Schlüsseln und bedingungslos deaktivieren aNULL, eNULL und EXP-Chiffren (nicht überschreibbar über SSLCipherSuite). [Kaspar Brand]
- Hinzufügen eines experimentellen cmake-basierten Build-Systems für Windows. [Jeff Trawick, Tom Donovan]
- event MPM: Korrigiert mögliche Abstürze (Module von Drittanbietern, die auf c- & gt; sbh zugreifen) oder gelegentliche verpasste mod_status-Updates für einige Keepalive-Anfragen unter Last. [Eric Covener]
- mod_authn_socache: Unterstützt optionale Initialisierungsargumente für Socache-Provider. [Chris Darroch]
- mod_session: Setzt das maximale Alter beim Speichern der Sitzung zurück. PR 47476. [Alexey Varlamov]
- mod_session: Nachdem Sie den Wert der von der Anweisung "SessionHeader" angegebenen Kopfzeile analysiert haben, entfernen Sie den Wert aus der Antwort. PR 55279. [Graham Leggett]
- mod_headers: Zulassen von Formatbezeichnern in der Ersetzungszeichenfolge bei Verwendung der Header-Bearbeitung. [Daniel Ruggeri]
- mod_dav: dav_resource- & gt; uri wird als unverschlüsselt behandelt. Dies war eine unnötige ABI geändert in 2.4.6 eingeführt. PR 55397.
- mod_dav: Erfordert keine Sperr-Token für die COPY-Quelle. PR 55306.
- Kern: Verkürzen Sie die Ausgabe nicht, wenn das Senden durch ein Signal unterbrochen wird, z. B. durch einen ausgehenden CGI-Prozess. PR 55643. [Jeff Trawick]
- WinNT MPM: Beenden Sie das Kind, wenn der Elternprozess abstürzt oder beendet wird. [Oracle Corporation]
- Windows: Fehler beim Verwerfen von stderr in einigen Fehlerprotokollkonfigurationen behoben. (Fehlermeldung AH00093) [Jeff Trawick]
- mod_session_crypto: Erlaube mit exec: calls, den Sitzungsschlüssel zu erhalten. [Daniel Ruggeri]
- core: Fügen Sie in HTTP-Antwortheadern fehlende Reason-Phrase hinzu. PR 54946. [Rainer Jung]
- mod_rewrite: Machen Sie das websocket-aware umschreiben, um das Proxying zu erlauben. PR 55598. [Chris Harris]
- mod_ldap: Verwenden Sie bei der Suche nach Untergruppen ein implizites ObjektClass = * anstelle eines expliziten cn = * -Filters. [David Hawes]
- ab: Fügen Sie eine Wartezeit hinzu, korrigieren Sie die Verarbeitungszeit und geben Sie nur Schreibfehler aus, wenn sie aufgetreten sind. [Christophe Jaillet]
- worker MPM: Erledigt Worker-Threads nicht gewaltsam, wenn der Kindprozess ordnungsgemäß beendet wird. [Oracle Corporation]
- core: apachectl -S druckt namenbasierte virtuelle Platzhalter doppelt aus. PR54948 [Eric Covener]
- mod_auth_basic: Fügen Sie die AuthBasicUseDigestAlgorithm-Direktive hinzu, um die Migration von Kennwörtern von Digest auf Standardauthentifizierung zu ermöglichen. [Chris Darroch]
- ab: Fügen Sie einen neuen Parameter -l hinzu, um die Länge der Antworten nicht zu überprüfen. Dies kann bei dynamischen Seiten nützlich sein. PR9945, PR27888, PR42040 [] Unterdrückt die Formatierung von Startmeldungen, die bei Verwendung von ErrorLogFormat in die Konsole geschrieben werden. [Jeff Trawick]
- mod_auth_digest: Seien Sie spezifischer, wenn der Realm nicht übereinstimmt, weil der Realm nicht angegeben wurde. [Graham Leggett]
- mod_proxy: Fügen Sie im Balancer-Manager eine Notiz hinzu, die angibt, ob Änderungen beibehalten werden oder nicht und ob Einstellungen vererbt werden. [Daniel Ruggeri, Jim Jagielski]
- mod_cache: Vermeiden Sie einen Absturz mit strcmp (), wenn der Hostname nicht angegeben ist. [Graham Leggett]
- core: Fügen Sie util_fcgi.h und zugehörige Definitionen und unterstützende Routinen für FastCGI hinzu, die weitgehend auf mod_proxy_fcgi basieren. [Jeff Trawick]
- mod_headers: Fügen Sie 'Header note header-name note-name' hinzu, um einen Response-Header-Wert in eine Notiz zu kopieren. [Eric Covener]
- mod_headers: Fügen Sie den Befehl 'setifempty' zu Header und RequestHeader hinzu. [Eric Covener]
- mod_logio: neuer Formatbezeichner% S (Summe), der die Summe der empfangenen und gesendeten Byte-Zähler darstellt. PR54015 [Christophe Jaillet]
- mod_deflate: Verbesserte Fehlererkennung beim Dekomprimieren von Anforderungskörpern mit nachgestellten Fehlern: Behandeln Sie den Fall, bei dem sich nachfolgende Bytes im selben Bucket befinden. [Rainer Jung]
- mod_authz_groupfile, mod_authz_user: Reduziere den Schweregrad von AH01671 und AH01663 von ERROR auf DEBUG, da diese Module nicht wissen, was mod_authz_core mit ihrem AUTHZ_DENIED-Rückgabewert macht. [Eric Covener]
- mod_ldap: Fügen Sie TRACE5 für LDAP-Wiederholungen hinzu. [Eric Covener]
- mod_ldap: Erneut versuchen bei LDAP-Timeout während Authn. [Eric Covener]
- mod_ldap: Ändern Sie "LDAPReferrals off" um die zugrunde liegende LDAP-SDK-Option auf OFF zu setzen und "LDAPReferrals default" einzuführen um den SDK-Standard zu übernehmen, ohne den Authentifizierungsrückruf erneut zu binden. [Jan Kaluza]
- core: Melden Sie eine Nachricht bei TRACE1, wenn der Client eine Verbindung abbricht. [Eric Covener]
- WinNT MPM: Stürzt nicht während der Initialisierung des untergeordneten Prozesses ab, wenn das Listen-Protokoll nicht erkannt wird. [Jeff Trawick]
- module: Beheben Sie einige Compiler-Warnungen. [Günter Knauf]
- Sync 2.4 und trunk - Vermeiden Sie einige Speicherzuweisungen und arbeiten Sie, wenn TRACE1 nicht aktiviert ist - Tippfehler in include guard beheben - Einrückung - Keine Notwendigkeit, die Zeichenfolge vor dem Entfernen des Pfades zu senken, es ist nur Zeitverschwendung ... - Spare ein paar Zyklen [Christophe Jaillet]
- mod_filter: Hinzufügen & quot; change = no & quot; als ein Proto-Flag zu FilterProtocol, um die zum Zeitpunkt der Registrierung gesetzten ersten Flags des Providers zu entfernen. [Eric Covener]
- core, mod_ssl: Aktivieren Sie die Fähigkeit für ein Modul, den Sinn eines Abfrageereignisses von einem Lesevorgang in einen Schreibvorgang umzukehren oder umgekehrt. Dies ist ein Schritt auf dem Weg, um es mod_ssl zu ermöglichen, das Ereignis MPM voll auszunutzen. [Graham Leggett]
- Makefile.win: Installieren Sie die richtige PCRE-DLL-Datei während der Debug-Build-Installation. PR 55235. [Ben Reser]
- mod_ldap: Korrigiert einen möglichen Speicherleck oder eine Beschädigung. PR 54936. [Zhenbo Xu]
- ab: Behebt mögliche Pufferüberläufe bei der Verarbeitung der T- und X-Befehlszeilenoptionen. PR 55360. [Mike Rumph]
- fcgistarter: Geben Sie SO_REUSEADDR an, um das Starten eines Servers mit alten Verbindungen in TIME_WAIT zu ermöglichen. [Jeff Trawick]
- core: Fügen Sie den open_htaccess-Hook hinzu, der in Verbindung mit dirwalk_stat und post_perdir_config (eingeführt in 2.4.5) die Verwendung von mpm-itk ohne Patches für den httpd-Core erlaubt. [Stefan Fritsch]
- support / htdbm: Behebt die Verarbeitung der Befehlszeilenoption -t. Regression eingeführt in 2.4.4
Was ist neu in Version 2.4.1:
- Kernverbesserungen:
- Laufzeit ladbare MPMs
- Mehrere MPMs können jetzt zur Kompilierungszeit als ladbare Module erstellt werden. Das gewählte MPM kann zur Laufzeit konfiguriert werden.
- Ereignis-MPM
- Das Event MPM ist nicht mehr experimentell, sondern wird jetzt vollständig unterstützt.
- Asynchrone Unterstützung
- Bessere Unterstützung für asynchrones Lesen / Schreiben zur Unterstützung von MPMs und Plattformen.
- LogLevel-Konfiguration pro Modul und pro Verzeichnis
- Der LogLevel kann jetzt pro Modul und pro Verzeichnis konfiguriert werden. Die neuen Ebenen trace1 bis trace8 wurden oberhalb der Debug-Protokoll-Ebene hinzugefügt.
- Konfigurationsbereiche pro Anfrage
- , und Abschnitte können verwendet werden, um die Konfiguration basierend auf Kriterien pro Anfrage festzulegen.
- Allgemeiner Ausdrucksparser
- Ein neuer Ausdrucksparser erlaubt es, komplexe Bedingungen unter Verwendung einer allgemeinen Syntax in Anweisungen wie SetEnvIfExpr, RewriteCond, Header, und anderen anzugeben.
- KeepAliveTimeout in Millisekunden
- Es ist jetzt möglich, KeepAliveTimeout in Millisekunden anzugeben.
- NameVirtualHost-Anweisung
- Wird nicht mehr benötigt und ist jetzt veraltet.
- Konfiguration überschreiben
- Die neue AllowOverrideList-Direktive ermöglicht feinere Kontrolle darüber, welche Direktiven in .htaccess-Dateien erlaubt sind.
- Konfigurationsdateivariablen
- Es ist jetzt möglich, Variablen in der Konfiguration zu definieren, was eine klarere Darstellung ermöglicht, wenn an vielen Stellen der Konfiguration der gleiche Wert verwendet wird.
- Reduzierte Speichernutzung
- Trotz vieler neuer Funktionen verbraucht 2.4.x weniger Speicher als 2.2.x.
- Neue Module:
- mod_proxy_fcgi
- FastCGI-Protokoll-Backend für mod_proxy
- mod_proxy_scgi
- SCGI-Protokoll-Backend für mod_proxy
- mod_proxy_express
- Bietet dynamisch konfigurierte Massenumkehr-Proxys für mod_proxy
- mod_remoteip
- Ersetzt die scheinbare ferne Client-IP-Adresse und den Hostnamen für die Anforderung durch die IP-Adressliste, die von einem Proxies oder einem Lastenausgleicher über die Anforderungsheader dargestellt wird.
- mod_heartmonitor, mod_lbmethod_heartbeat
- Erlaube mod_proxy_balancer, basierend auf der Anzahl der aktiven Verbindungen auf den Backend-Servern Loadbalancing-Entscheidungen zu treffen.
- mod_proxy_html
- Früher ein Drittanbieter-Modul, unterstützt dies das Korrigieren von HTML-Links in einer Reverse-Proxy-Situation, in der das Back-End URLs generiert, die für die Clients des Proxys nicht gültig sind.
- mod_sed
- Ein erweiterter Ersatz von mod_substitute, ermöglicht es, den Antworttext mit der vollen Leistung von sed. zu bearbeiten
- mod_auth_form
- Ermöglicht die formularbasierte Authentifizierung.
- mod_session
- Ermöglicht den Sitzungsstatus für Clients mithilfe von Cookie- oder Datenbankspeicher zu halten.
- mod_allowmethods
- Neues Modul, um bestimmte HTTP-Methoden einzuschränken, ohne die Authentifizierung oder Autorisierung zu beeinträchtigen.
- mod_lua
- Bettet die Lua-Sprache in httpd ein, für Konfigurations- und kleine Geschäftslogikfunktionen. (Experimentell)
- mod_log_debug
- Ermöglicht das Hinzufügen einer anpassbaren Debug-Protokollierung in verschiedenen Phasen der Anfrageverarbeitung.
- mod_buffer
- Ermöglicht die Pufferung der Eingangs- und Ausgangsfilterstapel
- mod_data li>
- Konvertieren Sie den Antworttext in eine RFC2397-Daten-URL
- mod_ratelimit
- Bietet eine Begrenzung der Bandbreitenrate für Clients
- mod_request
- Bietet Filter zum Verarbeiten und Bereitstellen von HTTP-Anfragekörpern
- mod_reflector
- Bietet die Reflektion eines Anfragekörpers als Antwort über den Ausgabefilterstapel.
- mod_slotmem_shm
- Bietet einen Slot-basierten Shared-Memory-Provider (ala das Scoreboard).
- mod_xml2enc
- Früher ein Drittanbieter-Modul, unterstützt dies die Internationalisierung in libxml2-basierten (Markup-aware) Filtermodulen.
- Modul Verbesserungen:
- mod_ssl
- mod_ssl kann jetzt so konfiguriert werden, dass ein OCSP-Server verwendet wird, um den Validierungsstatus eines Client-Zertifikats zu überprüfen. Der Standardantworter ist konfigurierbar, zusammen mit der Entscheidung, ob der im Clientzertifikat angegebene Responder bevorzugt wird.
- mod_ssl unterstützt jetzt auch das OCSP-Heften, bei dem der Server proaktiv eine OCSP-Verifizierung seines Zertifikats erhält und diese während des Handshakes an den Client sendet.
- mod_ssl kann jetzt so konfiguriert werden, dass SSL-Sitzungsdaten über memcached zwischen Servern ausgetauscht werden
- EC-Schlüssel werden jetzt zusätzlich zu RSA und DSA unterstützt.
- mod_proxy
- Die ProxyPass-Direktive ist jetzt am besten in einem Location- oder LocationMatch-Block konfiguriert und bietet einen erheblichen Leistungsvorteil gegenüber der traditionellen Zwei-Parameter-Syntax, wenn sie in großen Zahlen vorhanden ist.
- Die Quelladresse für Proxy-Anfragen ist jetzt konfigurierbar.
- mod_proxy_balancer
- Weitere Änderungen an der Laufzeitkonfiguration für BalancerMembers über Balancer-Manager
- Zusätzliche BalancerMembers können zur Laufzeit über den Balancer-Manager hinzugefügt werden
- Laufzeitkonfiguration einer Teilmenge von Balancer-Parametern
- BalancerMembers können auf 'Drain' gesetzt werden, so dass sie nur auf existierende Sticky-Sessions reagieren, so dass sie problemlos offline genommen werden können.
- Balancer-Einstellungen können nach Neustarts persistent sein.
- mod_cache
- mod_cache kann jetzt HEAD-Anfragen zwischenspeichern.
- Wenn möglich, können mod_cache-Direktiven nun pro Verzeichnis und nicht pro Server festgelegt werden.
- Die Basis-URL zwischengespeicherter URLs kann angepasst werden, sodass ein Cluster von Caches denselben Endpunkt-URL-Präfix verwenden kann.
- mod_cache kann jetzt veraltete zwischengespeicherte Daten liefern, wenn ein Backend nicht verfügbar ist (Fehler 5xx).
- mod_cache kann jetzt HIT / MISS / REVALIDATE in einen X-Cache-Header einfügen.
- mod_include
- Unterstützung für das Attribut 'onerror' innerhalb eines 'include' -Elements, das es ermöglicht, ein Fehlerdokument anstelle der Standardfehlerzeichenfolge im Fehlerfall zu liefern.
- mod_cgi, mod_include, mod_isapi, ...
- Die Übersetzung von Headern in Umgebungsvariablen ist strenger als zuvor, um einige mögliche Cross-Site-Scripting-Angriffe durch Header-Injection zu mildern. Header mit ungültigen Zeichen (einschließlich Unterstrichen) werden jetzt automatisch gelöscht. Umgebungsvariablen in Apache gibt einige Hinweise, wie man defekte ältere Clients, die solche Header benötigen, umgehen kann. (Dies betrifft alle Module, die diese Umgebungsvariablen verwenden.)
- mod_authz_core Berechtigungslogik-Container
- Erweiterte Berechtigungslogik kann nun mit der Require-Direktive und den zugehörigen Container-Direktiven wie. angegeben werden
- mod_rewrite
- mod_rewrite fügt für RewriteRule die Flags [QSD] (Query String Discard) und [END] hinzu, um häufige Umschreibungsszenarien zu vereinfachen.
- Fügt die Möglichkeit hinzu, komplexe boolesche Ausdrücke in RewriteCond zu verwenden.
- Erlaubt die Verwendung von SQL-Abfragen als RewriteMap-Funktionen.
- mod_ldap, mod_authnz_ldap
- mod_authnz_ldap fügt Unterstützung für verschachtelte Gruppen hinzu.
- mod_ldap fügt LDAPConnectionPoolTTL, LDAPTimeout und andere Verbesserungen bei der Behandlung von Zeitüberschreitungen hinzu. Dies ist besonders nützlich für Setups, bei denen eine statusbehaftete Firewall inaktive Verbindungen zum LDAP-Server löscht.
- mod_ldap fügt LDAPLibraryDebug hinzu, um Debug-Informationen zu protokollieren, die vom verwendeten LDAP-Toolkit bereitgestellt werden.
- mod_info
- mod_info kann nun die zuvor geparste Konfiguration während des Serverstarts an stdout ausgeben.
- Programmverbesserungen:
- fcgistarter
- Neues FastCGI-Deamon-Starter-Dienstprogramm
- htcacheclean
- Aktuelle zwischengespeicherte URLs können jetzt aufgelistet werden, wobei optionale Metadaten enthalten sind.
- Erlaube das explizite Löschen einzelner zwischengespeicherter URLs aus dem Cache.
- Dateigrößen können jetzt auf die angegebene Blockgröße aufgerundet werden, wodurch die Größenbeschränkungen der tatsächlichen Größe auf der Festplatte besser entsprechen.
- Die Cache-Größe kann jetzt durch die Anzahl der Inodes begrenzt werden, anstatt oder zusätzlich durch die Größe der Dateien auf der Festplatte begrenzt.
- rotatelogs
- Kann jetzt eine Verknüpfung zur aktuellen Protokolldatei erstellen.
- Kann nun ein benutzerdefiniertes Post-Rotate-Skript aufrufen.
- Dokumentation:
- mod_rewrite
- Die mod_rewrite-Dokumentation wurde neu angeordnet und fast komplett neu geschrieben, mit dem Fokus auf Beispiele und den allgemeinen Gebrauch, sowie darauf, Ihnen zu zeigen, wann andere Lösungen besser geeignet sind. Der Rewrite Guide ist jetzt ein Top-Level-Bereich mit viel mehr Details und besserer Organisation.
- mod_ssl
- Die Dokumentation von mod_ssl wurde stark erweitert, mit weiteren Beispielen auf der Einstiegsebene, zusätzlich zum vorherigen Fokus auf technische Details.
- Änderungen am Modulentwickler:
- Konfigurationshaken überprüft hinzugefügt
- Ein neuer Hook, check_config, wurde hinzugefügt, der zwischen den Hooks pre_config und open_logs läuft. Es wird auch vor dem Hook test_config ausgeführt, wenn die Option -t an httpd übergeben wird. Mit dem Hook check_config können Module interdependente Konfigurationsrichtwerte überprüfen und anpassen, während Nachrichten weiterhin auf der Konsole protokolliert werden können. Der Benutzer kann somit auf Fehlkonfigurationsprobleme hingewiesen werden, bevor die Hook-Funktion core open_logs die Konsolenausgabe in das Fehlerprotokoll umleitet.
- Ausdrucksparser hinzugefügt
- Wir haben jetzt einen universellen Ausdrucksparser, dessen API in ap_expr.h verfügbar gemacht wird. Dies wird vom Ausdrucksparser übernommen, der zuvor in mod_ssl implementiert wurde.
- Berechtigungslogik-Container
- Autorisierungsmodule registrieren sich jetzt als Provider über ap_register_auth_provider (), um erweiterte Autorisierungslogik wie. zu unterstützen
- Caching-Schnittstelle für kleine Objekte
- Der Header ap_socache.h macht eine providerbasierte Schnittstelle zum Zwischenspeichern kleiner Datenobjekte verfügbar, die auf der vorherigen Implementierung des mod_ssl-Sitzungscaches basiert. Anbieter, die einen zyklischen Puffer mit gemeinsamem Speicher, datenträgerbasierte dbm-Dateien und einen verteilten Memcache-Cache verwenden, werden derzeit unterstützt.
- Cache-Status-Hook hinzugefügt
- Das mod_cache-Modul enthält jetzt einen neuen cache_status-Hook, der aufgerufen wird, wenn die Caching-Entscheidung bekannt wird. Es wird eine Standardimplementierung bereitgestellt, die der Antwort einen optionalen X-Cache- und X-Cache-Detail-Header hinzufügt.
Was ist neu in Version 2.3.15 Beta:
- SICHERHEIT: CVE-2011-3348 (cve.mitre.org)
- mod_proxy_ajp: Reagieren Sie mit HTTP_NOT_IMPLEMENTED, wenn die Methode nicht erkannt wird.
- SICHERHEIT: CVE-2011-3192 (cve.mitre.org)
- core: Behebt die Behandlung von Bytebereichsanforderungen, um weniger Arbeitsspeicher zu verwenden, um Denial-of-Service zu vermeiden. Wenn die Summe aller Bereiche in einer Anfrage größer als die ursprüngliche Datei ist, ignorieren Sie die Bereiche und senden Sie die vollständige Datei. PR 51714.
- SICHERHEIT: CVE-2011-3607 (cve.mitre.org)
- core: Fixiere den Integer-Überlauf in ap_pregsub. Dies kann z.B. mit mod_setenvif über eine bösartige .htaccess.
- configure: Laden Sie alle Module in der generierten Standardkonfiguration, wenn Sie --enable-load-all-modules verwenden.
- mod_reqtimeout: Ändern Sie den Standardwert, um einige sinnvolle Timeout-Werte festzulegen.
- core, mod_dav_fs: Ändere den Standard ETag auf "Größe mtime", d. h. entferne den Inode. PR 49623.
- mod_lua: Expose SSL-Variablen über r: ssl_var_lookup ().
- mod_lua: LuaHook {AccessChecker, AuthChecker, CheckUserID, TranslateName} kann nun zusätzlich als & quot; early & quot; oder & quot; spät & quot; relativ zu anderen Modulen.
- configure: Laden Sie standardmäßig nur diejenigen Module, die entweder benötigt oder explizit von einem configure - enable-foo-Argument ausgewählt wurden. Die LoadModule-Anweisungen für Module, die von --enable-mods-shared = most und friends aktiviert wurden, werden auskommentiert.
- mod_lua: Verhindert, dass frühe Lua-Hooks (LuaHookTranslateName und LuaHookQuickHandler) in,, und htaccess konfiguriert werden, wo die Konfiguration ignoriert worden wäre.
- mod_lua: Resolve "versucht, den lokalen 'r' (einen Benutzerdatenwert) & quot; Fehler in LuaMapHandler-Skripten
- mod_log_debug: Benennen Sie das optionale Argument von if = to expr = um, damit es mehr mit anderen config-Anweisungen übereinstimmt.
- mod_headers: Erfordert, dass ein Ausdruck mit expr = angegeben wird, um mehr mit anderen Konfigurationsanweisungen übereinzustimmen.
- mod_substitute: Um eine Überbelegung der Speicherauslastung zu verhindern, beschränken Sie die Zeilenlänge auf 1 MB.
- mod_lua: Machen Sie die Abfragezeichenfolge (r.args) beschreibbar.
- mod_include: Fügen Sie Unterstützung für die Kodierung und Dekodierung von Anwendungen / x-www-form-urlencoded hinzu.
- rotatelogs: Fügen Sie die Option -c hinzu, um die Erstellung der Protokolldatei in jedem Rotationsintervall zu erzwingen, auch wenn sie leer ist.
- core: Begrenzen Sie ap_pregsub () auf 64K, fügen Sie ap_pregsub_ex () für längere Strings hinzu.
- mod_session_crypto: Refactor zur Unterstützung der neuen apr_crypto API.
- http: Fügen Sie einen fehlenden Location-Header hinzu, wenn der lokale URL-Pfad als ErrorDocument for 30x verwendet wird.
- mod_buffer: Stellen Sie sicher, dass wir für Unteranfragen zurücktreten, aber nicht für interne Weiterleitungen, die von mod_rewrite ausgelöst werden.
- mod_lua: füge r: construct_url als Wrapper für ap_construct_url hinzu.
- mod_remote_ip: Korrigiert die Konfiguration interner Proxies. PR 49272.
- mpm_winnt: Handle AcceptFilter 'none' Modus richtig; Lösen Sie den spezifischen IP-Endpunkt des Servers und die IP-Adresse des Remote-Clients nach der Verbindung auf.
- mod_setenvif: Entferne die OID-Übereinstimmung, die durch SetEnvIfExpr mit PeerExtList () veraltet wurde.
- mpm_prefork, mpm_worker, mpm_event: Wenn ein Kind erst vor einem ordnungsgemäßen Neustart erstellt wird und dann aufgrund einer fehlenden Sperrdatei beendet wird, muss der gesamte Server nicht heruntergefahren werden. PR 39311.
- mpm_event: Überprüfen Sie den Rückgabewert von ap_run_create_connection. PR: 41194.
- mod_mime_magic: Fügt der Beispielkonfiguration Signaturen für PNG und SWF hinzu. PR: 48352.
- core, unixd: Fügen Sie die Option -D D DUMP_RUN_CFG hinzu, um einige Konfigurationselemente aus der analysierten (oder standardmäßigen) Konfiguration auszugeben. Dies ist nützlich für Init-Skripte, die temporäre Verzeichnisse und Berechtigungen einrichten müssen.
- core, mod_actions, mod_asis: Downgrade von Fehlerprotokollmeldungen, die einen 404-Anfrage-Status von einem Loglevel-Fehler zu einer Info begleiten. PR: 35768.
- core: Korrigiert die Hook-Sortierung mit Perl-Modulen. PR: 45076.
- core: Erzwinge LimitRequestFieldSize, nachdem mehrere Header mit demselben Namen zusammengeführt wurden.
- mod_ssl: Wenn MaxMemFree gesetzt ist, fragen Sie OpenSSL & gt; = 1.0.0, um die Speichernutzung zu reduzieren. PR 51618.
- mod_ssl: Wenn Sie beim Start eines Serverzertifikats prüfen, ob es mit dem konfigurierten Servernamen übereinstimmt, berücksichtigen Sie auch dNSName-Einträge in der Erweiterung subjectAltName. PR 32652, PR 47051.
- mod_substitute: Reduziert die Speichernutzung und das Kopieren von Daten. PR 50559.
- mod_ssl / proxy: Aktivieren Sie die SNI-Erweiterung für Back-End-TLS-Verbindungen
- Fügen Sie Wrapper für malloc, calloc, realloc hinzu, die nach Speichermangel Situationen suchen und sie an vielen Stellen verwenden. PR 51568, PR 51569, PR 51571.
- Korrektur der Cross-Kompilierung von mod_cgi / mod_cgid, wenn APR_HAVE_STRUCT_RLIMIT falsch ist, aber RLIMIT_ * definiert sind. PR51371.
- core: Befolgen Sie ServerName / ServerAlias korrekt, wenn der Host-Header aus der Anfrage mit der VirtualHost-Adresse übereinstimmt. PR 51709.
- mod_unique_id: Verwenden Sie den Zufallsgenerator, um den Zähler zu initialisieren. PR 45110.
- core: Fügen Sie eine Convenience-API für apr_random hinzu.
- core: Fügen Sie die Anweisungen MaxRangeOverlaps und MaxRangeReversals hinzu, um die Anzahl der zulässigen überlappenden und reversierenden Bereiche zu steuern, bevor die gesamte Ressource zurückgegeben wird, mit einer Standardbeschränkung von 20.
- mod_ldap: Optionale Funktion uldap_ssl_supported (r) gab immer false zurück, wenn sie von einem virtuellen Host mit Anweisungen von mod_ldap aufgerufen wurde. Hat die Verwendung von mod_ldap durch mod_authnz_ldap nicht beeinflusst.
- mod_filter: Anstatt den Accept-Ranges-Header zu löschen, wenn ein mit AP_FILTER_PROTO_NO_BYTERANGE registrierter Filter vorhanden ist, setzen Sie den Header-Wert auf "none".
- core: Erlaube MaxRanges none | unlimited | default und setze 'Accept-Ranges: none' in dem Fall, dass Ranges mit MaxRanges none ignoriert werden.
- mod_ssl: Überarbeitung der CRL-basierten Sperrprüfung beim Validieren von Zertifikaten von Clients oder Proxy-Servern. Delegieren Sie die CRL-Verarbeitung vollständig an OpenSSL, und fügen Sie eine neue [Proxy] CARevocationCheck-Direktive hinzu, um den Sperrmodus zu steuern.
- core: Fügen Sie die Direktive MaxRanges hinzu, um die Anzahl der erlaubten Bereiche zu steuern, bevor die gesamte Ressource zurückgegeben wird, mit einem Standardwert von 200.
- mod_cache: Stellen Sie sicher, dass CacheDisable in einer LocationMatch korrekt angezeigt wird.
- mod_cache: Korrigiert das Verschieben des CACHE-Filters, das fälschlicherweise heruntergefahren wurde, wenn der ursprüngliche Filter nicht durch Konfiguration hinzugefügt wurde.
- mod_ssl: Verbesserung der Zertifikatfehlerprotokollierung. PR 47408.
- mod_authz_groupfile: Erhöhen Sie die Länge der Zeilen in der Gruppendatei auf 16 MB. PR 43084.
- core: Erhöhen Sie die Länge der Zeilen in der Konfigurationsdatei auf 16 MB. PR 45888. PR 50824.
- core: Hinzufügen einer API für größenveränderbare Puffer.
- mod_ldap: Aktivieren Sie LDAPConnectionTimeout für LDAP-Toolkits mit LDAP_OPT_CONNECT_TIMEOUT anstelle von LDAP_OPT_NETWORK_TIMEOUT, wie z. B. Tivoli Directory Server 6.3 und höher.
- mod_ldap: Ändern Sie die Standardanzahl der Wiederholungen von 10 auf 3 und fügen Sie eine LDAPRetries- und LDAPRetryDelay-Direktive hinzu.
- mod_authnz_ldap: Versuche es nicht während der Authentifizierung, da dies die reichlichen Wiederholungen multipliziert, die bereits von mod_ldap durchgeführt wurden.
- configure: Erlaubt die explizite Deaktivierung von Modulen auch bei der Modulauswahl 'reallyall'.
- mod_rewrite: Überprüfen Sie die Gültigkeit jeder internen (int :) RewriteMap, auch wenn die RewriteEngine im Serverkontext deaktiviert ist, um einen Absturz zu vermeiden, während zur Laufzeit auf die ungültige int: map verwiesen wird. PR 50994.
- mod_ssl, configure: erfordert OpenSSL 0.9.7 oder höher.
- mod_ssl: Entfernen Sie die ssl_toolkit_compat-Ebene.
- mod_ssl, configure, ab: Drop-Unterstützung für RSA BSAFE SSL-C Toolkit.
- mod_usertrack: Führen Sie mod_ustrack früher im Fixups-Hook aus, um sicherzustellen, dass der Cookie gesetzt wird, wenn Module wie mod_rewrite eine Weiterleitung auslösen. Benutze auch r- & gt; err_headers_out für den Cookie, aus dem gleichen Grund. PR29755.
- mod_proxy_http, mod_proxy_connect: Fügen Sie 'proxy-status' und 'proxy-source-port' Anforderungsnotizen für die Protokollierung hinzu. PR 30195.
- configure: Aktivieren Sie ldap-Module in 'all' und 'most', wenn ldap in apr-util. kompiliert wird
- core: Hinzufügen ap_check_cmd_context () - Überprüfen Sie, ob ein Befehl in der .htaccess-Datei ausgeführt wird.
- mod_deflate: Fix endlose Schleife, wenn der erste Bucket Metadaten ist. PR 51590.
- mod_authn_socache: Korrigiert, um in .htaccess zu arbeiten, falls nicht irgendwo in httpd.conf konfiguriert, und eine AuthnCacheEnable-Direktive einzuführen. PR 51991
- mod_xml2enc: neues (früher Drittanbieter-) Modul, das die Internationalisierung von Filtern über Smart Charset Sniffing und Conversion unterstützt.
- mod_proxy_html: neues (früher drittes) Modul, um HTML-Links in einer Reverse-Proxy-Situation zu reparieren, wo ein Back-End URLs erzeugt, die von Clients nicht aufgelöst werden können.
Was ist neu in Version 2.3.12 Beta:
- Diese Version enthält die Apache Portable Runtime (APR ) Version 1.4.5 und APR-Util Version 1.3.12 in einem separaten -deps Tarball. Die APR-Bibliotheken müssen aktualisiert werden, damit alle Funktionen von httpd korrekt funktionieren.
Kommentare nicht gefunden