Search code examples
cloudbeeschunked-encodingpaas

Why is chunked transfer encoding not allowed to web applications running in CloudBees run@cloud?


I'm using an application that sends SOAP requests (HTTP POST) to my application running in CloudBees PaaS (run@cloud). The SOAP sender application gets the following error from the server: Transport error: 411 Error: Length Required. This means that it should not use chunked transfer encoding, because chunked doesn't send Content-length header which the server seems to want.

Is there some reason why chunked cannot be used? I'm aware that some web servers, like Apache, might have DOS vulnerabilities related to chunked transfer encoding. Is this the reason? Or is it because run@cloud uses Nginx as a proxy?


Solution

  • You can now set the httpVersion end to end for your app:

    To enable: httpVersion=1.1

    for example, this is how WebSocket works:

    https://developer.cloudbees.com/bin/view/RUN/WebSockets

    You can and should also set proxyBuffering=false - (this is default for new apps).