The Perils of Changing a URL

Share this post

There are a lot of good reasons for tweaking a URL in order to make it more recognizable, and easier to share. URLs can be so long and convoluted, essentially comprised of nothing but code, and who wants to click on something that you can’t identify? You don’t want to take that risk. On the other hand, if you send something over Skype that you want your friends to laugh at, sometimes the URL can give the joke away.Page not Found

From a marketing perspective, regarding SEO, there are very good reasons to put certain keywords in your URL. Google will give you a higher ranking for that. Changing a URL is, basically, standard procedure, but things don’t always go as they should. Caution, and an awareness of proper procedures and the consequences of errors, is strongly advised, however. Things can break.

What is a URL Alias?

A URL is how your browser identifies a page to display. If I said go to CommonPlaces.com, commonplaces.com is the URL for that site. Drupal has a feature called “URL Alias” that allows users to provide a more understandable name to their content. This is incredibly useful to all of us who regularly surf the net, and is why most consultants tell people to always turn on the Path core module, which supports URL aliasing.

We recently took over responsibility of a client’s website. They were making a big announcement, and in the process, they changed the name to one of their webpages, a page with a lot of functionality. When they changed the page name, as part of URL aliasing, the URL changed with it. Now, when everybody who was taking part in the announcement navigated to this page, they were going to be told that the page couldn’t be found. Being unaware of the consequences of changing the page name placed this company in a difficult position.

We found that the URL aliasing was turned on, as expected. We turned it off, returned the URL to its original, gave the customer the ability to change the page title in the future, and put everything back to its proper order in time for their announcement.

There are two ways of implementing the URL aliasing.

  1. Through the CMS
  2. At the server level

If you don’t have a layered CMS, there are tools at the server level which enable the server to recognize the URL, redirecting you to the code version of the site. The URL is hard-coded in to the site. You adjust the .htaccess to redirect users to a different URL. The most basic .htaccess looks for any request for a specific page and if it finds that request, it forwards it to a new, specific page. This way, you can still have the SEO-friendly information that you want. Just remember, if you go in there changing something (however so slightly) in the back-end, you can end up breaking the page.

Advising Caution

If you explore this topic on search engines, you’ll see a lot of information directed to WordPress users, largely because many of them are DIYers, This is something which needs to be configured. It doesn’t automatically happen. That’s why members of the WordPress community provide guidance on how to do this properly.

When any site, particularly a larger one, is being redeveloped, you will probably want to build up your SEO on a variety of older URLs. It is important to preserve and map your content migration to maintain the SEO status that you have gained.

It’s really important to understand that 90% of the time, probably more, it is best to use the URL aliasing tool for SEO. However, you need to be aware of how it works, at least conceptually, because breaking links here can result in a cascading effect of breaks throughout the system. In a future blog, we’ll help you understand how relative links and absolute links can save a lot of headaches further down the road. Subscribe to our blog to learn all about it!

Related Posts

Config Sync Overview

Config Sync Overview

When Drupal 8 was released, it came with Configuration Syncing functionality. This has been a staple ever since for Drupal 9, Drupal 10, and beyond. Configuration Syncing was a game changer and one of my favorite features in Drupal Core.The days before config sync...