Omit trailing slash when proxying pre-authorized routes with no suffix
In !56731 (merged), we
pulled in the upstream reverse proxy code to rebase a suffix onto a URL
(e.g. /api/v4/uploads
-> /api/v4/uploads/authorize
).
In the case of info/refs
, git-upload-pack
, etc. no suffix is
added in the authorization endpoint. The changes in that merge request would cause Workhorse to append
a trailing slash when proxying the request to Rails. However, in
#330787 (closed), this broke Geo
maintenance mode since the middleware did not strip the trailing slash.
To fix this, we restore the behavior and omit the trailing slash if no pre-authorize suffix is provided. The absence or present of a trailing slash usually does not cause a material difference, but we might as well preserve the format of the original request.
Edited by Stan Hu