It has been said that assumption is the mother of all #$%!-ups. It can be dangerous to assume that all is well. In fact, unsatisfactory performance in search engine rankings, traffic analytics and responses/conversions can often be traced back to a site that’s broken.
Over the past sixteen years as a web developer and webmaster I’ve seen a lot of things that have broken websites. Here are a few of the classics from the hall of shame…
Sometimes the URL in a link was poorly formed in the first place and never tested. You of course always test every link when a page or post goes live, right?
An internal page or post may have been renamed or deleted, leaving internal broken links. Websites you linked to may have removed content, completed a redesign with a new platform, or disappeared entirely, resulting in broken external links.
Not only do broken links make for a poor user experience; it’s one of the factors Google’s algorithm considers when ranking websites. If you’re not checking your website regularly for broken links, there’s no time like the present to adopt the practice.
Online tools like Broken Link Checker make it easy, and free. On the Mac, I like to use the Integrity app. For PC’s there’s Xenu’s Link Sleuth. There’s also a WordPress plugin I like that monitors your site’s blog for broken links continuously: Broken Link Checker, with a list of any broken links detected in the Dashboard.
On CMS websites like WordPress and Joomla! installations, I’ve come across entire menus that suddenly broke. Yikes! Not one link or button worked. The web developer gets the blame for these, of course, but the cause has always been traced to the renaming of categories, thus far, where the permalink includes the category alias. Unfortunately, the clients never considered the impact coming up with “better” names for the categories would have on the internal links, so there have been weeks following the updates where sites were completely unusable. A sharp drop in search engine rankings, or an email to the owner that their site was majorly screwed, were the first indicator that anything was wrong. In some cases, only one menu link will go bad, usually the result of altering the alias for a page or post, or removing content.
Broken Images and Other Content
One of the common causes for missing images is doing a bit of housecleaning in the WordPress or Joomla! media folder, and weeding out one too many files. Oops! This should be a very easy fix. If you right-click on the broken image icon in the web page, and check the info for the URL, you should get the filename and FTP directory it disappeared from. Your last backup should have the missing file. You do make regular backups of your root directory and take MySQL dumps, or click the backup button in the control panel your host provides, right? I personally use the Updraft Plus – Backup/Restore plugin in WordPress, so backups are made to my Dropbox every night.
Here’s one most people don’t think of. Most hosting companies haven’t switched to solid state drives yet. That means hard drive platters spin nearly constantly and it’s only a matter of time before the one your files are on fails. In an ideal world, a RAID mirror backup drive is immediately swapped in within a microsecond. Many hosting companies don’t use redundant systems and instead have their hard drives backup during a slow period at night or, as we have discovered through hard experience, they may actually back up only weekly.
I recommend backing up on the server, but also having full recent backups on your own computer at all times. Eleven years ago we worked with a local hosting company that assured me that not being able to backup the MySQL databases with phpMyAdmin was not a problem. They had full backups on two servers and would be able to restore the sites within fifteen minutes if there was ever a problem. That worked just fine right until they went bankrupt, the servers were seized, and both the site files and backups for eight clients vanished. I lost tens of thousands on that episode, making it up to the clients, and blush when I think of it.
Hard drive backups are not infallible and sometimes the most recent backup is actually corrupt. In severe data loss cases, your site won’t load and all visitors will see is an error message. More frequently, you’ll only discover missing images and other media days or weeks later. Some plugins may not work. Text may be garbled with weird symbols. Random weird stuff. In other cases, the company notices there are issues with the replacement drive and goes with an earlier backup. This can be serious if the content is time sensitive. For example, we built and maintained an online grocery store site that updated almost every day with new pricing and specials. To revert to a backup of eight days earlier caused some very costly problems, before we detected the problem and restored from our own backup, and we’ve learned to choose hosting companies more carefully for time sensitive applications like that.
Three times over the past decade another gremlin has wiped out database-driven CMS sites: timeouts during edit uploads. If you’re making live edits to your WordPress, Joomla!, Drupal or other CMS site, a slow connection or server during high traffic can not only cause the edit to fail, it can damage the MySQL database file. A few characters that don’t transfer, are altered, or go missing is all it takes. With a corrupt database, nothing loads. Always test your edits in a browser, after refreshing your content, before walking away from the computer. Never assume that it looks great and that the changes took place without any glitches.
Software Issues May Have Broken Your Site
When WordPress or Joomla! asks you to make sure your site is fully backed up before you update the core software or extensions, please do as they recommend.
We’ve had updates fail completely, taking the site down within seconds. In other cases, only part of the site was damaged during a version update and we didn’t know about it for days or weeks. Plugins and other extensions that once played nice together may have serious conflicts after an update.
Adding or removing an extension (plugins, modules and components, depending on the CMS) can cause problems. Do a quick check of the site any time you make a change. You may want to empty the page cache in WordPress 3.6+ (button in the yellow bar at the top). A few weeks ago, I discovered to my horror that the comments on my site had vanished… all of them. I began to backtrack in my mind and the only change I could think of was the installation of CommentLuv Premium. On a hunch, I deactivated it and instantly my comments returned. Very disappointed over loosing the benefits offered by the plugin, I tried reactivating it in WordPress. This time my comments were visible again. Just one of those funky things that happens sometimes when extending the functionality of a CMS website. Unfortunately, I went over a week without comments enabled because I failed to check everything immediately after making a change.
Server timeouts or long download times for your visitors and search engine robots can dramatically increase your bounce rate, cause visitors to conclude your site’s down (perhaps permanently) and affect rankings. If your website is temporarily unavailable, generating a 404 Page Not Found error when Google bots come by to index your site, this can severely hurt your search engine rankings.
The lowest priced hosting plan can be the worst deal out there. When we take on a new client, we frequently inherit a new host. Consequently we’ve dealt with more than 80 hosting companies over the years. The host we’re putting clients with these days is HostGator, and it’s also where this site is hosted. HostGator’s pricing is not rock bottom, but still very reasonable. In our experience, they provide quick support, when it’s required. In the past five years we’ve had a single incident, across all the client accounts we manage, resulting from migration to a new server. It was fixed the same day. I love ‘transparent’ hosting, the kind you never think of except when you pay the annual hosting invoice.
Always, have a recent backup of your server’s root directory files and database dump stored on your own hard drive! Never assume your site if still working perfectly. Check it for a few minutes almost every day, even if you haven’t made any updates for a while. You may want to run a link check right now…
Over to you
Have you ever had that sickening feeling where you asked yourself, “Oh my God, I wonder how long it’s been like that?” Are there any tools you like to use for checking the integrity of your site or for automating backups?
Latest posts by Cole Wiebe (see all)
Tags: web site maintenance