How to Fix Error 404 Not Found on Your WordPress Site

An error 404 occurs on every website that undergoes changes in URL, and redesign.. It occurs when you click on a link, but instead of getting the site you want, an error pops up indicating that the requested page is not available. Something along the lines of '404 Not Found'. A 404 error is the standardized HTTP status code. The message is sent from the webserver of an online presence, to the web browser (usually the client) that sent the HTTP request. The browser then displays this error code.

 

Further reading:

Best Practices for Managing 404 Error Pages

How to Fix Website Bounce Rate Problems

20 Ways You Can Reduce Your Website Bounce Rate

How to Maintain a Healthy WordPress Website

How website errors affect search engine rankings

 

Of all potential errors that can be found on your WordPress website, Error 404 is one of the frustrating ones for both you and your site visitors. Stumbling upon Error 404 is not something that you want your first-time visitors to experience. Also, a 404 can be an indicator that there were some changes, and you should add a 301 redirect for Search Engine Optimization (SEO) purposes.

 

Further reading:

Important Google Analytic SEO Metrics You Need To Take Very Seriously

Reasons Why People Leave Your Website

Useful URL Structuring Tips That Will Help Higher Ranking

WordPress Maintenance Tasks You Need to Perform Regularly

 

This post is to clear some things up and help everyone get their WordPress site working correctly again. We will cover:

    What is the Error 404 Not Found?
    What Does the Error 404 Mean?
    What can Cause the 404 Error?
    Variations of Error 404 Not Found
    The Impact of Error 404 on SEO
    The Impact of Error 404 on Site Performance
    How to Fix the 404 Error on WordPress?
    Update the Permalinks of Your WordPress Website
        Find the Cause via Debugging
        Using FTP for Fixing the 404 Error
        Set Up 301 Redirects For Renamed or Moved Content
        Use cPanel for Redirects
        Fix WordPress 404 Error (Internet Explorer)
    How to Create Your Error 404 Not Found Page
    How to Monitor 404 Errors Going Forward
        Option 1 – Google Analytics
        Option 2 – WordPress Plugin
        Option 3 – Third-Party Audit Tool
        Option 4 – Google Search Console
    Conclusions

 

What is the Error 404 Not Found?

Whenever a visitor goes to your website, their browser sends a request to the webserver and would receive data that includes a thing called HTTP header. This header contains HTTP status codes that explain the request status.

The request works perfectly most of the time, and an HTTP status code, in fact, would never be seen. However, if something goes wrong, the web browser should display a message with the HTTP status code in order to indicate a particular problem. The Error 404 Not Found message is the result of that whole process.

 

What Does the Error 404 Mean?

In general, it means that the client (yours, your visitor’s browser) succeeded in connecting to the host (the site’s server), but it wasn’t able to locate the requested resource (a URL or a filename).

For example, if anyone tries accessing www.example.com/post-name but there is no content with the slug post-name, the visitor will see a 404 error. That’s because the requested resource doesn’t exist, even though the server is functioning correctly.

It is not only regarding posts or pages. Any missing asset could potentially generate a 404 server error (an image file that’s missing, missing CSS, JavaScript, etc.).

 

What can Cause the 404 Error?

The typical trigger for an error 404 message is when website content has been removed or moved to another URL. There are also other reasons why an error message could appear. These include:

    The URL or its content (such as files or images) was either deleted or moved (without adjusting any internal links accordingly)

    The URL was written incorrectly (during the creation process or a redesign), linked incorrectly, or typed into the browser incorrectly

    The server responsible for the website is not running or the connection is broken

    The requested domain name can’t be converted to an IP by the domain name system (DNS)

    The entered domain name doesn’t exist (anymore)

Dead links are often left for long periods of time since operators have no idea that the linked content has been deleted or moved. Many websites still appear in the search engineresults pages (SERPs) even though they aren’t available online anymore (or at least not at the specified URL). Other linked websites such as blogs, news portals, etc. are often not informed that the site has been removed or can now be found under a new URL. Many website operators don’t check their external links regularly and therefore a functioning link could easily become a dead one.

 

Variations of Error 404 Not Found

Different browsers often display error messages in various ways. Thus “Error 404 Not Found” also has different variations, such as:

    “Error 404”
    “404 Not Found”
    “HTTP Error 404”
    “Not Found”
    “Page Not Found”
    “The requested URL was not found on this server.”
    “The page cannot be found”
    “We can’t find the page you’re looking for.”
    “The requested URL /~ was not found on this server. That’s all we know.”

Many sites would create their custom 404 Error page to address the error. Also, there are some WordPress themes that include their own custom 404 error pages by default. This is why you might not actually stumble upon the message itself because many sites play around with it and make it funny in a creative way.

When an error 404 is displayed, you will find a link to go back to the home page, and in some cases, another to report the issue.


The Impact of Error 404 on SEO

Search engines, such as Google and Bing, will have a negative impression of a site if it has many 404 errors. Once the crawlers have established that many requests are being met with 404 codes, it presumes the site isn’t very well maintained. Dead links affect a site’s ranking and Google can decrease its placement in the SERPs or even stop indexing it if there are too many 404 error pages occurring. This may result in a considerable decrease in visitor numbers for the website.

Keep in mind that it depends on the reason for Error 404 happening. For example, if you have individual 404 errors because of some broken URLs, instead of someone just mistyping the URL, that will constrain Google from correctly crawling your website, which would lead to a negative SEO effect. So, we recommend the fixing of errors 404 as soon as possible.

 

The Impact of Error 404 Not Found on Site Performance

Websites generating lots of 404 errors are more likely to have performance issues, as such responses are not usually cached. It can be a massive problem if you promote or accidentally get a surge of traffic on a 404 error page.

The visitor loses trust in the site if it’s full of broken links or if the landing page (the page that is accessed from the search engine results) is dead. If the site is experiencing this problem regularly, many users won’t take the trouble to continue to search since they aren’t even sure if the desired content is still available.

You can check all 404 errors in the Google Search Console or choose to install a plugin like Redirection, which would log all 404 errors. Keep in mind that such plugins often impact your website performance.

The reason these errors are bad is that a lot of 404 error pages are resource-intensive. For larger WordPress sites, it’s best to avoid the heavy 404 pages. You should make a simple 404 template to avoid querying the database.

 

How to Fix the 404 Error on WordPress?

Below, we will cover some methods on how to fix the 404 Error, depending on whether it happens only on a specific piece of content, or sitewide. Here are the two methods:

Update the Permalinks of Your WordPress Website

In case you experience 404 errors sitewide when trying to access your WordPress site’s content, the most likely cause would be a permalink issue (or your .htaccess file, when using the Apache web service). The easiest fix for that is an update to your permalink settings through the WordPress Dashboard. All you have to do is go to Settings → Permalinks → Save Changes (you don’t have to make changes – just clicking the button is enough):
Save Permalinks Changes in WordPress

This action will update the permalinks settings, as well as flush the rewrite rules. In most of the cases, this is a solution that fixes the WordPress posts 404 error.

With that in mind, if the solution does not work for you, you have two actions – to find the cause via a debugger plugin or to use FTP for some manual action.

Find the Cause via Debugging

First and foremost, try to disable plugins that handle the redirections or create customized permalinks. If that doesn’t solve the problem, use a debugger and view the rewrite array and confirm for you that the rewrite rule for processing your URL is not in its place. To do this, go ahead and install the plugin called Debug This, which helps with viewing what is actually in the WordPress rewrite array.

Once the Debug This plugin is installed and activated, go to your WordPress site and navigate to Homepage → Admin Bar → Debug This → Query → Rewrites:
Going to Debug This Plugin - Query - Rewrites

You should end up on a screen containing rewrite rules on its left-hand side and the PHP string being rewritten on its right-hand side. So, let’s say that you have a broken author feed (example: https://www.myblog.com/author/myself/feed/). You want to troubleshoot the broken feed, so go ahead and look for the word “author.” The following rule should be found: author/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$

If you are not seeing the rule, this is the source of your issue. WordPress simply does not process requests unless it knows exactly what it is doing.

The actual PHP URL string that WordPress uses for this author feed is: http://myblog.com/index.php?author_name=myself&feed=rss. If this PHP URL does not work, you have another problem with your WordPress site.

This would be a case where you want to start deactivating plugins one by one and see if you can find the conflicting PHP that’s responsible for the issue.

Using FTP for Fixing the 404 Error

To use FTP for fixing the 404 Error, login to your server using FTP, and then modify the .htaccess file, located where folders like /wp-content/ and /wp-includes/ are. In case your permissions are 660, and you are not the owner of the file or part of the group, the easiest thing to do is temporarily making the file writable by changing the permissions to 666. After that, repeat the original solution. Make sure that you don’t forget to change the permissions back to their default. Your other option is to manually add the following code in your .htaccess file:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Set Up 301 Redirects For Renamed or Moved Content

When experiencing 404 errors only on a particular piece of content, you are most likely facing one of the following issues:

    Changed the URL slug for the particular piece of content;
    Moved the content manually, e.g., by deletion of the existing post and then pasting it into a new one.

In those cases, users are most likely to try accessing the content where it was located previously, which would result in a 404 page instead of what they expected. The easiest fix for this is an automatic redirect for anyone that tries to access the previous location to the new one. This way, they will make it to their destination and will not be frustrated with your website. It’s also vital for SEO. In case you decide to rename or move a post without the addition of a redirect, you will lose all the authority that’s attached to the pointed backlinks at that particular post.

By default, WordPress would try redirecting any changed/moved content. However, it does not always work, and you should not rely on WordPress for this specific functionality. With that said, there are some ways to set up your redirects in WordPress:

You can use the free Redirection plugin for managing redirects from the WordPress Dashboard. Once the plugin is installed and activated, go to Tools → Redirection and input the 404 error page URL in the Source URL box with the new location in the Target URL box.

Use cPanel for Redirects

You can also use the cPanel for managing redirects. Using the cPanel is what you should prefer since you are doing the redirects on a server level, which won’t have an effect over your site’s performance, which also means one less plugin to worry about.

If you are a FastComet client, it means that you are using the Apache server. In that case, you have the option to use .htaccess to set up redirects.

Fix WordPress 404 Error (Internet Explorer)

At times, your WordPress site would be working correctly on all browsers, except for Internet Explorer. That’s because IE ignores the 404 conditions since its birth. However, Microsoft had introduced a system update that can result in stopping the 404 error page on your WordPress website instantly, even if the website sends valid content back.

The solution is quite simple. All you have to do is put the following code in the header.php file that is located in your theme folder:

header('HTTP/1.1 200 OK');

 

How to Create Your “Error 404 Not Found” Page

 

Even if you do your best to prevent 404 errors through following the right tips, it’s near impossible to eliminate every possibility of a 404 error on your WordPress website. Keep in mind that it’s not uncommon even for small WordPress sites to have hundreds or even thousands of 404 errors on a monthly basis. This happens because of URL mistypes and incorrect redirects of other websites to yours.

You can use plugins for creating your own 404 page. Offering a more user-friendly error page, the free 404page plugin gives you the opportunity to set up your custom 404 error page with:

    A search box;
    Important links;
    Contact info;

One more essential feature of the plugin is that it doesn’t create redirects. A 404 Error page should not be redirected to a physical page. The 404 error always needs to be generated dynamically on a particular page.

With these elements included on a 404 page, you will be giving visitors the tools that they need in order to find their way to the page they are looking for. However, don’t forget to keep your Error 404 page as light as possible for better performance. Only use the features of absolute necessity.

 

How to Monitor 404 Errors Going Forward

It’s absolutely beneficial that you pay some special attention to which requests the 404 errors on your WordPress site. The following can help you:

Find the broken links (we recommend using GTMetrix) that are sending people to a resource that is non-existent (those could be internal or external links from other websites). You should then do your best to fix all broken links if it’s at all possible.

See which are the pages that Google is having trouble crawling. Afterward, you need to figure out the reason why Google is trying to crawl a non-existing page. Also, you should set up a redirect if that’s necessary.

Option 1 – Google Analytics

If you use Google Analytics, you can set up your custom report, tracking 404 external link errors. We have a helpful tutorial on How to Integrate Google Analytics.

Option 2 – WordPress Plugin

We have already mentioned the Redirection plugin. It can help you with monitoring for 404 errors right from your WordPress Dashboard.

Option 3 – Third-Party Audit Tool

There are many third-party audit tools on the internet, such as Screaming Frog, Online Broken Link Checker, Dead Link Checker, etc. Choose the one you like the most and try it out, in case you want to go with that option.

Option 4 – Google Search Console

Last but not least, you can track 404 errors that Google crawlers encounter in the Google Search Console. After verifying your WordPress site with the Google Search Console, go to Crawl → Crawl Errors → Not found to see a list of 404 errors that Google has encountered. This is one of the easiest methods. It’s also the best when it comes to performance because it does not require any third-party plugins or further scanning against your WordPress website. Since the Google bots are already crawling your website regularly, why not take advantage of the information they already give?

 

Identifing 404 errors on your own website

It’s important for website owners to prevent HTTP 404 pages. This applies to internal 404 error pages on their own website as well as external 404 error pages on other sites. There are numerous free tools available to help you find these broken links more easily. Three of the best and most well-known are:

  • Google Search Console (formerly known as 'Google Webmaster Tools'): if you already have a Google account and have registered your website there, you should make use of the Google Search Console option. Any 404 errors found by the Google crawler are displayed in the web tool and can also be marked as corrected here too. Additional functions enable you to find errors in robots.txt files and use crawling statistics to work out how often your site has been crawled by Google crawlers.
  • Dead Link Checker: one of the simplest and fastest tools for finding both internally and externally linked 404 pages is the Dead Link Checker. With this web app you simply enter the URL of the site you want to inspect and then start the check. Here you have the choice of checking a single web page or a whole site. The app lists all the tracked error pages with status codes and URL.
  • W3C Link Checker: this online tool from World Wide Web Consortium (W3C) is particularly detailed when it comes to testing individual website pages, so the process takes longer to verify links than with other websites. The W3C Link Checker works just like the Dead Link Checker: you enter the URL and let the tool do the rest. It’s also possible to add further details

 

Conclusions

You should always keep in mind that 404 errors will be happening on your site even if you don’t like it. The larger a WordPress site grows, the more 404 errors it will have. What we recommend is for you to get a good workflow for monitoring those types of errors and proceed with fixing them. The 404 errors are not pleasant to visitors, your brand, and search engines don’t quite like to see them too.

We hope this was a helpful article. In case it did not work for you, you can always contact our technical support experts via submitting a support ticket. Also, in case you have any suggestions that we did not list, we will be glad to hear them in the comments below. Our goal for this post is to be as comprehensive as possible, and we are always open to suggestions.

Share this post

Comments (0)

Leave a comment


Powered by Simple Blog