Linux: Forcing Apache to correct misspellings of URL

by on July 28, 2005 · 1 comment· LAST UPDATED July 28, 2005

in

Apache has mod_speling for automatic URL spell-correction. For example when on this site you can request the page using following format:

http://cyberciti.biz/news is same as use URL http://cyberciti.biz/news.php.

This module help visitor to get correct content instead of error 404 – document not found and you can also omit file extension such as .pl, .php, .html etc in urls references. It attempts to correct misspellings of URLs that users might have entered, by ignoring capitalization and by allowing up to one misspelling. This must be configured on massive web hosting server by ISP and web hosting service providers so the hosting customer can take advantage of this module.

Following steps demonstrates how to activate this module under Debian GNU/Linux:

A) Open your Apache modules configuration file:
# vi /etc/apache-perl/modules.conf

B) Append following line to this file:
LoadModule speling_module /usr/lib/apache/1.3/mod_speling.so

C) Save the file.

D) This module need to be configured via httpd.conf via CheckSpelling directive. You can configure it for entire site, particular virtual host or even via .htaccess file. Open your /etc/apache-perl/httpd.conf and add followint line in server config context:

CheckSpelling on

E) Restart the apache:
# /etc/init.d/apache-perl restart

Please note that above steps are same under FreeBSD/Solaris for Apache web server except for file location i.e. httpd.conf and modules.conf. Please refer man page for more info.

TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 1 comment… read it below or add one }

1 Anonymous July 29, 2005 at 5:15 pm

This is good now i can use almos omit the file extensions :D
However page http://httpd.apache.org/docs/2.0/mod/mod_speling.html points that “the directory scan which is necessary for the spelling correction will have an impact on the server’s performance when many spelling corrections have to be performed at the same time”

What you think of this?

Reply

Leave a Comment

Previous post:

Next post: