HTTP Error 410: Gone

It has been a while since I changed the backend of my site fron NewsPro to Movable Type. A side effect of this change was that all pages changed URL, which I considered a minor problem since most people enter the site through the home page (which did not change). Normally I try to keep URL's the same, but the old system used horrible filenames like 1025286960,58049,.html and stored all files in a single directory.

Like I said, most visitors enter the site through the fronpage, but there are some people looking for specific information with search engines. Until today these visitors were presented a '404 Page not found' error page of my provider directly followed by the homepage of my provider. In other words, these visitors end up at a completely useless page, and won't ever visit my site anymore!!!!

Something had to change. First, I wanted to change the error message from 404 (Not Found) to 410 (Gone), since the latter message is more precise. All visitors looking for never-existing files will still get the old 404 message. I read about this code a while ago on dive into mark, and I kept it in mind for using it on m own site.

Secondly, I want to show them another page, which at least links to my site. For the moment I chose to present them the search page, so at least they can search my site for the information they are looking for. I am planning to create a separate error page explaing what has happened in more detail, but until now I will just show the search page.

So how did I set this all up?
The Apache server has the ability to specify configuration options in a file called .htaccess. The settings in this file are valid for the current and all underlying directories, and thus can be overruled by another file. I created this file in the root directory of my site and added the following information:

ErrorDocument 410 /cgi-bin/mt/mt-search.cgi
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_URI} ^/cgi-bin/newspro
RewriteRule cgi-bin/newspro/(.*) - [G,L]

In 'normal' language, these lines say the following:
The first line says that the page at /cgi-bin/mt/mt-search.cgi (which is my search page) has to be shown in case a request has status 410: Gone.
The second and third lines activate and configure a module for the Apache webserver calles mod_rewrite, which allows me to process the next two lines.
The fourth line defines the condition to me used for the rewrite. It says: if the requested URL starts with '/cgi-bin/newspro'.
The last line specifies what has to happen if the condition above is met: rewrite 'cgi-bin/newspro/*.*' with nothing (-). Besides the rewrite (which does nothing) two options have been specified: G and L. The first changes the status to Gone (410), and the L tells that this is the last rule to process.

In short: if the URL contains /cgi-bin/newspro, the status will be changed to Gone, and when error 410 (Gone) occurs, the search page will be shown.

1 TrackBack

A while ago, I explained how I configured the server to return HTTP Error 410: Gone for all requests for pages created with my old CMS. After installing Movable Type, all pages of my site moved to another location, and I was not able to work out the ne... Read More

1 Comment

Surely if these pages still exist, but the URI has changed, you should issue a 301 (Moved Permanently) response pointing to the new URI?

410 is only if the pages have been deleted.

Leave a comment

Monthly Archives

Recent Entries

  • Comments and tweets

    A recent trend in the blogosphere has been to add **tweets as comments** on posts. I understand where this comes from, as in general...

  • Manifiesto «En defensa de los derechos fundamentales en internet»

    Ante la inclusión en el Anteproyecto de Ley de Economía sostenible de modificaciones legislativas que afectan al libre ejercicio de las libertades de expresión, información...

  • Commenting not possible

    I just discovered that it currently is not possible to comment on this blog. At first sight it looks like the problem is caused...

  • Back from the CeBIT

    I am back from the CeBIT show. Actually, I came back on Monday, but have been too busy to post. This year has been...

  • Downloading viruses?

    I just saw the screen above, which is the ClamWin antivirus software uploading its virus database. On the left hand side they have an animation...

Close