Cannot Disable HTTP KeepAlives for HTTP/1.1 Clients (195179)



The information in this article applies to:

  • Microsoft Internet Information Server 4.0

This article was previously published under Q195179
We strongly recommend that all users upgrade to Microsoft Internet Information Services (IIS) version 6.0 running on Microsoft Windows Server 2003. IIS 6.0 significantly increases Web infrastructure security. For more information about IIS security-related topics, visit the following Microsoft Web site:

SYMPTOMS

HTTP/1.1 client connections are not closed, even if the Allow HTTP KeepAlives check box is not selected in the Web site's properties in Microsoft Management Console (MMC).

CAUSE

This behavior occurs because the Allow HTTP KeepAlives check box applies only to HTTP/1.0 clients that connect to the IIS server.

RESOLUTION

This behavior is by design.

MORE INFORMATION

The "Section 8.1.2.1 Negotiation" section of RFC2068 states the following:

In case the client does not want to maintain a connection for more than
that request, it SHOULD send a Connection header including the
connection-token close.


Sections 8.1.2.1 and 19.7.1 both discuss backwards compatibility for previous HTTP versions and state that persistent connections must be explicitly negotiated.

The AllowKeepAlives feature is only valid in the following scenarios:

If you clear the Allow HTTP KeepAlives check box on the server and use an HTTP/1.0 client that tries to establish a persistent connection, the server sends a close.

If you select the Allow HTTP KeepAlives check box on the server and use an HTTP/1.0 client that tries to establish a persistent connection, the server honors the request for persistence.

Modification Type:MinorLast Reviewed:6/23/2005
Keywords:kbprb KB195179