From 4968041a7e1ff90b920704f50fccb9e7968d0d99 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Fri, 29 Apr 2016 07:36:47 +0000 Subject: document Rack::Chunked/ContentLength semi-requirements Ugh, it sucks that other servers are so tolerant of violations of the Rack spec. Rainbows! had the same problem: https://bogomips.org/rainbows-public/20140704195032.GA13152@dcvr.yhbt.net/ --- Documentation/yahns-rackup.pod | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'Documentation') diff --git a/Documentation/yahns-rackup.pod b/Documentation/yahns-rackup.pod index efdfb6d..6172661 100644 --- a/Documentation/yahns-rackup.pod +++ b/Documentation/yahns-rackup.pod @@ -159,6 +159,16 @@ The RACK_ENV variable is set by the aforementioned -E switch. If RACK_ENV is already set, it will be used unless -E is used. See rackup documentation for more details. +=head1 CAVEATS + +yahns is strict about buggy, non-compliant Rack applications. +Some existing servers work fine without "Content-Length" or +"Transfer-Encoding: chunked" response headers enforced by Rack::Lint. +Forgetting these headers with yahns causes clients to stall as they +assume more data is coming. Loading the Rack::ContentLength and/or +Rack::Chunked middlewares will set the necessary response headers +and fix your app. + =head1 CONTACT All feedback welcome via plain-text mail to L -- cgit v1.2.3-24-ge0c7