From 710ff963f41eec6e3b49e77032c1ab2587e596dc Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=B4me=20Loyet?= Date: Sat, 2 Jul 2011 16:34:39 +0000 Subject: [PATCH] - Implemented FR #54499 (FPM ping and status_path should handle HEAD request) --- sapi/fpm/fpm/fpm_status.c | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/sapi/fpm/fpm/fpm_status.c b/sapi/fpm/fpm/fpm_status.c index ac9365de8a..cf912c06a9 100644 --- a/sapi/fpm/fpm/fpm_status.c +++ b/sapi/fpm/fpm/fpm_status.c @@ -65,6 +65,12 @@ int fpm_status_handle_request(TSRMLS_D) /* {{{ */ sapi_add_header_ex(ZEND_STRL("Expires: Thu, 01 Jan 1970 00:00:00 GMT"), 1, 1 TSRMLS_CC); sapi_add_header_ex(ZEND_STRL("Cache-Control: no-cache, no-store, must-revalidate, max-age=0"), 1, 1 TSRMLS_CC); SG(sapi_headers).http_response_code = 200; + + /* handle HEAD */ + if (SG(request_info).headers_only) { + return 1; + } + PUTS(fpm_status_ping_response); return 1; } @@ -107,6 +113,16 @@ int fpm_status_handle_request(TSRMLS_D) /* {{{ */ return 1; } + /* send common headers */ + sapi_add_header_ex(ZEND_STRL("Expires: Thu, 01 Jan 1970 00:00:00 GMT"), 1, 1 TSRMLS_CC); + sapi_add_header_ex(ZEND_STRL("Cache-Control: no-cache, no-store, must-revalidate, max-age=0"), 1, 1 TSRMLS_CC); + SG(sapi_headers).http_response_code = 200; + + /* handle HEAD */ + if (SG(request_info).headers_only) { + return 1; + } + /* full status ? */ full = SG(request_info).request_uri && strstr(SG(request_info).query_string, "full"); short_syntax = short_post = NULL; @@ -332,9 +348,6 @@ int fpm_status_handle_request(TSRMLS_D) /* {{{ */ } } - sapi_add_header_ex(ZEND_STRL("Expires: Thu, 01 Jan 1970 00:00:00 GMT"), 1, 1 TSRMLS_CC); - sapi_add_header_ex(ZEND_STRL("Cache-Control: no-cache, no-store, must-revalidate, max-age=0"), 1, 1 TSRMLS_CC); - strftime(time_buffer, sizeof(time_buffer) - 1, time_format, localtime(&scoreboard.start_epoch)); now_epoch = time(NULL); spprintf(&buffer, 0, short_syntax, @@ -354,7 +367,6 @@ int fpm_status_handle_request(TSRMLS_D) /* {{{ */ scoreboard.active_max, scoreboard.max_children_reached); - SG(sapi_headers).http_response_code = 200; PUTS(buffer); efree(buffer); -- 2.40.0