Curl POST - 411 Length Required
Solution 1:
You are correct -- lighttpd doesn't support POST requests with an empty message body without a 'Content-Length' header set to zero, and CURL sends such a request. There's argument back and forth about who's right, but in my opinion, lighttpd is broken. A POST with no Content-Length and no Transfer-Encoding is perfectly legal and has no message body.
Adding -d ""
causes CURL to send a Content-Length: 0
header, which resolves the problem.
You could modify lighttp. Find the code that issues the 411 error and instead set the content length to zero.