HTTP 410 Error: SEO Significance & Implementation

HTTP Error 410 Gone

Last update:

Navigating the web world, the HTTP 410 error stands out as both a marker for a missing page and an SEO tool. This guide explores the 410 error, its difference from the 404 error, and its role in SEO. We’ll also cover how to implement it on your website effectively.

Table of Contents

What is the 410 Gone error?

The HTTP 410 Gone Client Error serves as a specific response code sent by the server, indicating that the requested resource, whether it’s a webpage or a file, is no longer available and won’t likely return in the future.

Unlike other errors which may suggest temporary issues, the 410 error conveys a deliberate decision by the website owner or administrator. It signals to both users and search engines that a particular resource or page has been intentionally removed, and this situation is expected to be permanent.

410 error messages

Depending on the web server or browser you may find different descriptive messages for this error:

  • “HTTP Status 410”
  • “410 Gone”
  • “This page can’t be found -It may have been moved or deleted. HTTP ERROR 410”
  • “ERROR 410”
  • A Blank page, e.g. Firefox Browser.

For example, in Brave browser (based on the Chromium web browser), you’ll likely see a paper icon along with a simple message telling you “This web.domain page can't be found“:

Screenshot by Brave of a localhost error page displaying 'This localhost page can't be found' with an HTTP ERROR 410 notification and an icon of a document with a sad face
Default php 410 error message displayed in a Chromium browser

The default 410 Gone error displayed by Apache, looks like this:

Screenshot by Apache of a localhost error page with the title 'Gone' and a message indicating the resource is no longer available and advising to remove all references to it.
410 Gone, Apache default page error

410 Gone versus 410 Bad Gateway: Watch out!

There is no confusion here: 410 Gone is HTTP 410 Gone, nothing else.

If you happen to find information or questions relating http status 410 with the wrong description Bad Gateway instead of Gone, it will be most probably adressed to IT people managing Chrome devices, nothing to do with HTTP status codes!

Google states immediatly the resemblance between HTTP Status Codes and those codes provided by Chrome device related managing. Literally reads “The error codes have similar patterns to HTTP error codes”. According to their own status codes, 410 will mean “Device not found”: Quite another world.

HTTP 410 is not Bad Gateway. Follow the link to our article to fully understand 502 Bad Gateway.

410 Gone vs 404 Not Found

The “410 Gone” error can be confused with the “404 Not Found” error. Both error codes are used to communicate that the requested page or resource is not available.

The difference is subtle: The 410 Gone Error means “permanently not available” while the 404 Not Found means “temporarily not available”.

A common situation in which we encounter the 404 error is when we try to access a misspelled URL.

One use case where the HTTP 410 code is helpful is that of a malware infection. The malware may have published URLs with words in search engines that can damage our reputation. Showing a 410 is a way to indicate to crawlers that we do not have that content.

410 Gone vs 404 Not Found for SEO

When Google crawls your website to index your pages, it will treat each page or resource differently depending on the HTTP code returned by the server.

In a Webmaster Hangout, Google’s John Mueller explained the difference:

The subtle difference here is that a 410 will sometimes fall out a little faster than a 404. But usually, we’re talking on the order of a couple days or so.

John Mueller, Senior Webmaster Trends Analyst at Google

Here in this Webmaster Hangout, you have the explanation from John Mueller:

Transcription:
– John Muller: “… from our point of view in the mid term, long term 404 is the same as 410, for us. So in both of these cases we drop those URLs from the index … we generally reduce crawling a little bit of those URLs, so that we don’t spend so much time crawling things that we know don’t exist. The subtle difference here is that a 410 will sometimes fall out a little bit faster than a 404. We usually are talking on the order of couple of days.”

Use the 410 Gone Status Code, if you want to speed up the process of Google removing the web page from their index.

Speeding up page removal from a search index can be especially useful after a malware intrusion, where a hacker infects a site with hundreds of spam pages and hideous URLs. Redirecting all those spam pages to a 410 Gone status page will help us speeding up the index deletion.

Why speeding things up to clean up the mess? Not only for safety, authority and plain control on your assets.
At the same time you are saving Googlebot and many other search engine crawlers time and effort, something called crawl budget. Remember this.

You want to treasure your crawl budget to let the bots use it at full power on your best competing contents.

Whatever Google voice said, former malware URLs can be a long term go-and-try for the bots, ending up in repeating 404 errors diminishing your crawl budget. You better 410 those rogue URLs and let bots understand faster what happens.

Remember: 404 looks like an accident, an error, a red light on the dashboard. 410 is fully intentioned. Use it.

Solving the 410 Gone

The 410 Error uses to be an intentional error code. Webmasters use it to declare that a resource is no longer available, so we can consider that it is not a random web error or server configuration error.

Having said that, if you experience a “410 Gone” error:

  1. It’s a good idea to check the link you are trying to visit. If there is no mistake in the URL, then,
  2. Take into account that the website owner might have intentionally removed the content or moved it to a new domain or URL.
  3. A final workaround is to look for the “product”, “service” or “content” by using some keywords on your preferred search engine.

How to create 410 errors for no longer existing pages?

We describe below different methods to help you create 410 errors

How to configure the 410 error with Apache

You can redirect a page to the 410 Gone error using two different modules.

Redirect to the 410 error page with the Apache mod_alias module:

The easiest way to redirect to 410 error pages on Apache servers is to call the default 410 HTTP server response using the “Redirect” directive in your apache.config or .htaccess file:

Redirect gone /path/to/the/page_to_remove

Redirect to 410 error pages with the Apache mod_rewrite module

If you need more sophisticated redirections you can use the RewriteRule of mod_rewrite Apache module.

Reproducing the same previous redirect with a Rewrite command in your your apache.config or .htaccess file:

RewriteEngine On
RewriteRule ^/path/to/the/page_to_remove$ - [L,NC,G]

The flag “G” is the one in charge of showing the “Gone” error.

As mentioned, with this mod_rewrite module you can use regular expressions and target multiple pages at once:

RewriteEngine On
RewriteRule ^/path/to/the/(page_to_remove|page_to_eliminate|also_this_one)\.php$ - [L,NC,G]

How to configure the 410 error with Nginx

If you are working with Nginx, edit you nginx.conf file define a location block to target your single or multiple pages. Reproducing same previous sample URL: /path/to/the/page_to_remove

location = /path/to/the/page_to_remove { 
  return 410; 
}

And you can also take advantage of the regex rules in the location section like any other nginx location configuration. Reproducing previous sample of multiple pages:

location ~ ^/path/to/the/(page_to_remove|page_to_eliminate|also_this_one) { 
  return 410; 
}

At Wetopi we use Nginx for it’s performance, and best part is that you can use your own Free development servers to test configuration changes like the ones exposed in this article.

Save your website: don’t test in production!

When testing new server configurations, it is highly recommended to work on a “localhost” or “Staging” server.

If you don’t have a development WordPress server, signup at wetopi, it’s FREE.

How to show the 410 error with PHP code

If you want to show the “410 Gone” in a PHP page, all you need is to output the 410 header.

Paste the following code at the beginning of the affected page:

<?php
header( "HTTP/1.1 410 Gone" );
exit();

Conclusion

The HTTP 410 error is more than just a simple status code; it’s a strategic tool for webmasters and SEO professionals. Its clear message about a page’s permanent removal can positively impact a website’s credibility and search engine ranking. Understanding and effectively using the 410 error can give your site an edge.

If you’re removing content, consider the 410 error – it’s a small change that can make a big difference.

All HTTP Status Codes

200 OK

201 Created

202 Accepted

203 Non-Authoritative Information

204 No Content

205 Reset Content

206 Partial Content

207 Multi-Status

208 Already Reported

226 IM Used

300 Multiple Choices

301 Moved Permanently

302 Found

303 See Other

304 Not Modified

305 Use Proxy

307 Temporary Redirect

308 Permanent Redirect

400 Bad Request

401 Unauthorized

402 Payment Required

403 Forbidden

404 Not Found

405 Method Not Allowed

406 Not Acceptable

407 Proxy Authentication Required

408 Request Timeout

409 Conflict

410 Gone

411 Length Required

412 Precondition Failed

413 Payload Too Large

414 Request-URI Too Long

415 Unsupported Media Type

416 Requested Range Not Satisfiable

417 Expectation Failed

418 I’m A Teapot

421 Misdirected Request

422 Unprocessable Entity

423 Locked

424 Failed Dependency

426 Upgrade Required

428 Precondition Required

429 Too Many Requests

431 Request Header Fields Too Large

444 Connection Closed Without Response

451 Unavailable For Legal Reasons

499 Client Closed Request

500 Internal Server Error

501 Not Implemented

502 Bad Gateway

503 Service Unavailable

504 Gateway Timeout

505 HTTP Version Not Supported

506 Variant Also Negotiates

507 Insufficient Storage

508 Loop Detected

510 Not Extended

511 Network Authentication Required

599 Network Connect Timeout Error

We are techies passionate about WordPress. With wetopi, a Managed WordPress Hosting, we want to minimize the friction that every professional faces when working and hosting WordPress projects.

Not a wetopi user?

Free full performance servers for your development and test.
No credit card required.

See how Wetopi stacks up against your current hosting

Try before you buy.

With no obligation on your part, we’ll migrate a copy of your website:

No hidden small text.
No commitments.
No credit card.