Do not set Connection: keep-alive unless -enable_keep_alive is set

This commit is contained in:
Sergey Lyubka committed 2011-11-06 10:04:55 +01:00
1 parent 79df70f519
commit 8601b03ead
2 files changed
+4 -2

No files matched your search

+3 -2
View File
@@ -781,8 +781,9 @@ static int match_extension(const char *path, const char *ext_list) {
static int should_keep_alive(const struct mg_connection *conn) {
const char *http_version = conn->request_info.http_version;
const char *header = mg_get_header(conn, "Connection");
return (header == NULL && http_version && !strcmp(http_version, "1.1")) ||
(header != NULL && !mg_strcasecmp(header, "keep-alive"));
return (!mg_strcasecmp(conn->ctx->config[ENABLE_KEEP_ALIVE], "yes") &&
(header == NULL && http_version && !strcmp(http_version, "1.1"))) ||
(header != NULL && !mg_strcasecmp(header, "keep-alive"));
}
static const char *suggest_connection_header(const struct mg_connection *conn) {
+1
View File
@@ -229,6 +229,7 @@ o("GET /$test_dir_uri/x/ HTTP/1.0\n\n",
"SCRIPT_FILENAME=test/test_dir/x/index.cgi", 'SCRIPT_FILENAME');
o("GET /ta/x/ HTTP/1.0\n\n", "SCRIPT_NAME=/ta/x/index.cgi",
'Aliases SCRIPT_NAME');
o("GET /hello.txt HTTP/1.1\n\n", 'Connection: close', 'No keep-alive');
#o("GET /hello.txt HTTP/1.1\n\n GET /hello.txt HTTP/1.0\n\n",
# 'HTTP/1.1 200.+keep-alive.+HTTP/1.1 200.+close',
# 'Request pipelining', 2);