回答:
正解です。lighttpdは、 'Content-Length'ヘッダーがゼロに設定されていない空のメッセージ本文を持つPOST要求をサポートしていません。CURLはそのような要求を送信します。だれが正しいかについては議論が行き来しますが、私の意見では、lighttpdは壊れています。Content-LengthとTransfer-EncodingのないPOSTは完全に合法であり、メッセージ本文はありません。
追加する-d ""
と、CURLがContent-Length: 0
ヘッダーを送信し、問題が解決します。
lighttpを変更できます。411エラーを発行するコードを見つけ、代わりにコンテンツの長さをゼロに設定します。
-d @/dev/null
良く見えると思うなら代わりに使うことができます。を使用することもできます-H "Content-Length: 0"
。(私はこれらの両方をテストし、動作します。)
-d ""
最適なオプションのようです。
-d ""
や設定するconfig lighttpdディレクティブはありませんか?-d ""
ハックのように見えます。