HomePhabricator

Fix Phriction document previews for the root document ("/") with Apache option…

Description

Fix Phriction document previews for the root document ("/") with Apache option "MergeSlashes On"

Summary:
Ref T13662. I ran into this while trying to reproduce the mention issue discussed there.

Currently, the root document (with slug "/") attempts to preview using the URI /phriction/preview// (with two // at the end). This is collapsed into "/phriction/preview/" by Apache if "MergeSlashes On" is configured, which is the default behavior. The route then 404s.

Instead, just use "/phriction/preview/?slug=/" so this endpoint functions properly regardless of the "MergeSlashes" configuration.

Test Plan:

  • Configured Apache with "MergeSlashes On" (which is the default behavior).
  • Tried to preview a content edit of the root document in Phriction, which didn't work and generated 404s for "/phriction/preview//" in the console log.
  • Applied patch.
  • Previwed content in Phriction (which now worked properly).
  • Accessed /a//b///c//// and similar with "MergeSlashes On" and "MergeSlashes Off", confirmed that this option controls whether PHP receives a URI with or without merged slashes in "path" after rewriting.

Reviewers: 0

Reviewed By: 0

Maniphest Tasks: T13662

Differential Revision: https://secure.phabricator.com/D21708

Details