Page MenuHomePhabricator

When the user visits an Object page without a URL set explicitly in their URL, re-write their history to the canonical one
Open, LowPublic

Description

When a user browses to wikifunctions.org/wiki/Z1 they're implicitly seeing wikifunctions.org/view/en/Z1 (and all the links/rel="canonical"s etc. are set as such), but their browser state stays on the implicit URL rather than the explicit one.

Acceptance criteria:

  • Replace URLs, not push URLs; going back one should take the user to their search engine/etc. source of the link
  • Visiting wikifunctions.org/wiki/Z1 replaces the URL with wikifunctions.org/view/en/Z1
  • Visiting wikifunctions.org/wiki/Z1?uselang=es replaces the URL with wikifunctions.org/view/es/Z1
  • Visiting wikifunctions.org/wiki/Z1?action=edit replaces the URL with wikifunctions.org/wiki/Z1?action=edit&uselang=en
  • Visiting wikifunctions.org/wiki/Z1?action=history replaces the URL with wikifunctions.org/wiki/Z1?action=history&uselang=en

Event Timeline

Can someone please explain this issue properly? From what I can see on my localhost, I am getting a URL like

image.png (1×2 px, 213 KB)
when visiting the page, which is expected.

Can someone please explain this issue properly?

When you go to https://wikifunctions.org/wiki/Z1 you get the contents of https://wikifunctions.org/view/en/Z1 (except for some very minor differences). However, we don't issue an HTTP redirect or a client-side JS history re-write to update the URL in the browser.

Note that this task is in the "Product backlog" for the product team to decide whether we want to do anything about this.