KeepAliveTimeout exists to close a keep-alive connection if a new request is not issued within a given period of time. Provided the user does not close his browser/tab, this timeout (usually 5-15 seconds) is what eventually closes most keep-alive connections, and prevents server resources from being wasted by holding on to connections indefinitely.
MaxKeepAliveRequests directive puts a limit on the number of HTTP requests that a single TCP connection (left open due to
KeepAlive) will serve. Setting this to
0 means an unlimited number of requests are allowed.
Why would you ever set this to anything but "unlimited"? Provided a client is still actively making requests, what harm is there in letting them happen on the same keep-alive connection? Once the limit is reached, the requests still come in, just on a new connection.
The way I see it, there is no point in ever limiting this. What am I missing?