Apache: Get rid von Keep-Alive Eintrag in der Header-Liste
Ich bin mit LAMP (Linux, Apache, MySQL, PHP) server.
Derzeit sendet der server die Antwort mit der nächsten Header-Liste. Ich will zu beseitigen, Keep-Alive Eintrag für Sicherheit Gründe, zu haben-Header-Liste ohne Sie. Ist es möglich zu verhindern, senden von Keep-Alive Eintrag in der Header-Liste?
Aktuelle Antwort Header:
Cache-Control private, no-cache, no-store, must-revalidate, post-check=0, pre-check=0
Connection Keep-Alive
Content-Encoding gzip
Content-Type text/html; charset=UTF-8
Date Thu, 13 Mar 2014 01:43:49 GMT
Expires Thu, 13 Mar 2014 01:43:49 GMT
Keep-Alive timeout=5, max=200
Last-Modified Thu, 13 Mar 2014 01:43:49 GMT
Pragma no-cache
Server Apache
Transfer-Encoding chunked
Vary Accept-Encoding
X-DNS-Prefetch-Control off
X-Frame-Options sameorigin
Antwort-Header Würde Ich Gerne Statt:
Cache-Control private, no-cache, no-store, must-revalidate, post-check=0, pre-check=0
Connection Keep-Alive
Content-Encoding gzip
Content-Type text/html; charset=UTF-8
Date Thu, 13 Mar 2014 01:43:49 GMT
Expires Thu, 13 Mar 2014 01:43:49 GMT
Last-Modified Thu, 13 Mar 2014 01:43:49 GMT
Pragma no-cache
Server Apache
Transfer-Encoding chunked
Vary Accept-Encoding
X-DNS-Prefetch-Control off
X-Frame-Options sameorigin
Du musst angemeldet sein, um einen Kommentar abzugeben.
Meines Wissens keine. Der ganze Zweck des
Keep-Alive
header ist zu kommunizieren die Notwendigkeit für eine ständige Verbindung zum client. So loszuwerden, die Header entledigt sich die wichtigste form der Kommunikation zwischen client & server.Sagte, Sie könnte in der Lage sein, um es auszuschalten, indem
unset
in der Apache-config oder.htaccess
als hier erklärt. Ich betone könnte da hatte ichheader
Richtlinien nicht als Verhalten erwartet, dass in einigen Versionen von Apache. Aber unter Annahme guter glaube, zuerst ist sicher dieheaders
- Modul aktiviert ist. In Ubuntu 12.04 tun Sie dies:Und fügen Sie dieses zu Ihrer Apache-config oder
.htaccess
:Nun den Apache neu starten:
Mehr details auf die header-Richtlinie sind hier.
Gibt es ein paar Möglichkeiten, um diese in apache:
Server-weit über die KeepAlive-Direktive ( KeepAlive ). Allerdings können Sie nicht haben, diese per-directory-Konfiguration-Dateien, so dass die Einstellung
KeepAlive Off
auszuschalten, halten Sie lebendig für den gesamten server.Mit SetEnv oder SetEnvIf mit mod_env, und legen Sie die nokeepalive Umwelt-Variablen. Dieser schaltet sich keepalive für den Ort, wo die Umwelt festgelegt ist, oder die Regel, abgestimmt durch SetEnvIf (je nachdem, mit Sie verwenden). z.B.
kann in der HTACCESS
SetEnv nokeepalive 1
Verwendung von mod_rewrite, um wieder in die Umwelt für eine bestimmte Regel, z.B.
RewriteRule some-file.html - [E=nokeepalive:1]
Mit PHP (oder anderen server-Sprache der Website) und senden Sie die Kopfzeile
Connection: close
. Dadurch wird der Apache für das auslassen der Keep-Alive-header, da die Verbindung nicht mehr keepalive. z.B.php
header('Connection: close');
Verwenden Sie mod_headers. zum einrichten der Verbindung-header wieder zu schließen, z.B.
Header set Connection "close"
Ich persönlich noch nicht getestet, das Letzte, aber es sollte funktionieren.
SetEnv force-proxy-request-1.0 1
,SetEnv proxy-nokeepalive 1
,proxy-initial-not-pooled 1
.KeepAlive-Verhalten (Verfügbarkeit und timeouts) direkt konfigurierbar:
http://httpd.apache.org/docs/2.4/mod/core.html#keepalive
Ändern dies ist in Erster Linie ein Aspekt der Leistung eher als Sicherheit, aber Sie sind frei, testen Sie die Auswirkungen in Ihrer eigenen Umgebung.