Jonathan Rudenberg <[email protected]> wrote:
> RFC 2616 section 9.4[1] states:
>
> > The HEAD method is identical to GET except that the server MUST NOT return
> > a message-body in the response.
>
> A HEAD request against this simple Rack app running on unicorn-4.6.2:
>
> require 'rack'
>
+ use Rack::Head
> run lambda { |env| [200, {}, []] }
The Rack::Head middleware should be used to correctly strip HEAD
responses of their bodies (frameworks such as Rails/Sinatra should
already add Rack::Head to the middleware stack for you)
> Looks like this on the wire:
>
> HEAD / HTTP/1.1
> User-Agent: curl/7.24.0 (x86_64-apple-darwin12.0) libcurl/7.24.0
> OpenSSL/0.9.8x zlib/1.2.5
> Host: localhost:8080
> Accept: */*
>
> HTTP/1.1 200 OK
> Date: Thu, 13 Jun 2013 16:04:55 GMT
> Status: 200 OK
> Connection: close
> Transfer-Encoding: chunked
>
> 0
>
> HTTP/1.1 500 Internal Server Error
> As you can see, not only is there a zero-length chunked encoding body,
> but for some unknown reason there is a 500 response with no body as
> well.
Try using "-d" on the command-line to enable debugging to see what the
error is (and check the logs/stderr output).
Also, what RACK_ENV (or -E/--env) are you using? It could be the
incorrect HEAD response tripping Rack::Lint under development mode.
> Please cc any responses directly to me, as I do not subscribe to this list.
Done :>
_______________________________________________
Unicorn mailing list - [email protected]
http://rubyforge.org/mailman/listinfo/mongrel-unicorn
Do not quote signatures (like this one) or top post when replying