There are a number of ways to configure redirects in the site.
Within docs.github.com, you can redirect from one file to another or from one version to another.
Sometimes we change the name of an article but want its old URL to redirect to its new URL. For these types of redirects, we use redirect_from
frontmatter. See /content#redirect_from for details.
If you want the URL for one version of an article to redirect to the URL for another version, you must use /lib/redirects/static/redirect-exceptions.txt instead. For example, if you remove the Free, Pro, & Team (fpt
) version of an article, to prevent 404s, the URL for the fpt
version should redirect to a version of the article that still exists.
Each entry in this file should start with the path you want to redirect to, including the version, followed by an unordered list of the paths you want to redirect from. For example, if you removed the fpt
version of "Cloning a repository", you would redirect folks who attempt to access that path to the ghec
version with the following entry.
/enterprise-cloud@latest/repositories/creating-and-managing-repositories/cloning-a-repository
- /articles/cloning-a-repository
- /articles/cloning-a-repository-from-github
- /github/creating-cloning-and-archiving-repositories/cloning-a-repository
- /github/creating-cloning-and-archiving-repositories/cloning-a-repository-from-github/cloning-a-repository
- /repositories/creating-and-managing-repositories/cloning-a-repository
Note that you must add redirects for both the current fpt
path and any previous fpt
paths.
Sometimes the canonical home of some content moves outside the help site. For these types of redirects, we add entries to /lib/redirects/external-sites.json.
We also have custom routing code that automatically creates redirects under the hood for things like moved Admin guide pages. This code lives in /lib/redirects/get-old-paths-from-permalink.js. All redirects for the site are compiled when the server starts by /lib/redirects/precompile.js.
See Links and image paths for info on how links and images are rewritten on the fly at page render time.
See Troubleshooting for info on viewing the redirects for any page.