Page MenuHomePhabricator

Redirect `/source/x` (no slash) to `/source/x/` (canonical) when viewer is logged out and "x" is public
ClosedPublic

Authored by epriestley on Dec 20 2016, 1:42 PM.
Tags
None
Referenced Files
F18854051: D17097.id41124.diff
Fri, Oct 31, 9:30 PM
F18854049: D17097.id41123.diff
Fri, Oct 31, 9:30 PM
F18854048: D17097.id.diff
Fri, Oct 31, 9:30 PM
F18853657: D17097.diff
Fri, Oct 31, 6:33 PM
F18841705: D17097.id.diff
Tue, Oct 28, 10:39 AM
F18837557: D17097.diff
Mon, Oct 27, 6:12 AM
F18774222: D17097.id41123.diff
Thu, Oct 9, 3:58 PM
F18770991: D17097.id.diff
Wed, Oct 8, 4:45 PM
Subscribers
None

Details

Summary

Fixes T12035. Normally, the "abc" -> "abc/" redirect is handled automatically when "abc" hits a 404.

However, in this case, "source/x" does not 404. We route this to a valid controller because some VCS requests omit the slashes, then manually perform the redirect if we aren't serving a VCS request.

Allow this controller to serve public resources so we can serve the redirect to logged-out users instead of prompting them to login so they can be redirected.

Test Plan

Visited /source/x as a logged-out user, where x is a public repository.

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable