From f203eaae7ea84de9e974ea5dac2df97d664d8e61 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sun, 17 Aug 2014 02:33:55 +0000 Subject: http_response: remove Status: header Whatever compatibility reasons which existed in 2009 likely do not exist now. Other servers (e.g. thin, puma) seem to work alright without it, so there's no reason to waste precious bytes. --- lib/unicorn/http_response.rb | 4 +--- test/unit/test_response.rb | 6 ------ 2 files changed, 1 insertion(+), 9 deletions(-) diff --git a/lib/unicorn/http_response.rb b/lib/unicorn/http_response.rb index 083951c..cc027c5 100644 --- a/lib/unicorn/http_response.rb +++ b/lib/unicorn/http_response.rb @@ -24,14 +24,12 @@ module Unicorn::HttpResponse # writes the rack_response to socket as an HTTP response def http_response_write(socket, status, headers, body, response_start_sent=false) - status = CODES[status.to_i] || status hijack = nil http_response_start = response_start_sent ? '' : 'HTTP/1.1 ' if headers - buf = "#{http_response_start}#{status}\r\n" \ + buf = "#{http_response_start}#{CODES[status.to_i] || status}\r\n" \ "Date: #{httpdate}\r\n" \ - "Status: #{status}\r\n" \ "Connection: close\r\n" headers.each do |key, value| case key diff --git a/test/unit/test_response.rb b/test/unit/test_response.rb index 85ac085..fcddc5e 100644 --- a/test/unit/test_response.rb +++ b/test/unit/test_response.rb @@ -38,7 +38,6 @@ class ResponseTest < Test::Unit::TestCase http_response_write(out,'200', {}, []) assert ! out.closed? assert out.length > 0, "output didn't have data" - assert_equal 1, out.string.split(/\r\n/).grep(/^Status: 200 OK/).size end def test_response_200 @@ -71,7 +70,6 @@ class ResponseTest < Test::Unit::TestCase out = StringIO.new http_response_write(out,200, {"X-Whatever" => "stuff"}, []) assert ! out.closed? - assert_equal 1, out.string.split(/\r\n/).grep(/^Status: 200 OK/i).size end def test_body_closed @@ -91,9 +89,5 @@ class ResponseTest < Test::Unit::TestCase assert ! out.closed? headers = out.string.split(/\r\n\r\n/).first.split(/\r\n/) assert %r{\AHTTP/\d\.\d 666 I AM THE BEAST\z}.match(headers[0]) - status = headers.grep(/\AStatus:/i).first - assert status - assert_equal "Status: 666 I AM THE BEAST", status end - end -- cgit v1.2.3-24-ge0c7