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

Reply via email to