So why would this cause pages to load slowly?Connection keep-alive basically tells the browser/server to keep the connection alive so that it can be used for future requests. This way you don't have overhead for opening and closing a new connection for every request/response. The problem is that if the web server doesn't send a content-length attribute in the response header the browser doesn't know if all the data was sent or not. So, it keeps waiting and waiting until it hits some kind of time-out, which could be 30 seconds or 5 minutes.