You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When configuring apache to use mod_proxy_uwsgi and incoming requests have a body with a chunked transfer encoding apache returns:
HTTPException: 411 Length Required: Length Required: A request of the requested method PUT requires a valid Content-length.: Apache/2.4.18 (Ubuntu) Server at 158.69.92.142 Port 80 (HTTP N/A)
Running uwsgi in http mode and using mod_proxy to forward the http worked fine.
Calling setenv appears to be globally scoped which is breaking the
glance path which relies on chunked uploads. The glance path is
separated by using mod_proxy instead of mod_proxy_uwsgi because
mod_proxy_uwsgi doesn't support chunked encoding.[1] The proxy-sendcl [2]
was set on the mod_proxy_uwsgi path just in case someone tried to send a
chunked request to the api server we would be able to handle it. It
tells apache to locally cache the chunked request and send the
content-length as a normal upload to the upstream server. However, if we
can only set it globally across then small potential benefit is not worth
having all glance uploads cached by apache. This commit just removes
setting the flag. In the future if we can have devstack isolate this
flag it might be worth adding back to the mod_proxy_uwsgi path, but for
right now it's not worth the tradeoff.
[1] unbit/uwsgi#1540
[2] https://httpd.apache.org/docs/2.4/mod/mod_proxy.html#request-bodies
Depends-On: Idf6b4b891ba31cccbeb53d373b40fce5380cea64
Change-Id: Iab2e2848877fa1497008d18c05b0154892941589
Closes-Bug: #1709970
I believe this is due to this line. Specifically the REQUEST_CHUNKED_ERROR option which causes the 411 error. Perhaps using the REQUEST_CHUNKED_DECHUNK would work, though I haven't tried it.
When configuring apache to use mod_proxy_uwsgi and incoming requests have a body with a chunked transfer encoding apache returns:
Running uwsgi in http mode and using mod_proxy to forward the http worked fine.
For reference the uwsgi ini file is:
And the apache site conf was:
ProxyPass "/image" "unix:/var/run/uwsgi/glance-wsgi-api.socket|uwsgi://uwsgi-uds-glance-wsgi-api/" retry=0
This was happening when running uwsgi 2.0.15
The text was updated successfully, but these errors were encountered: