mod_speling
Overview
mod_speling module tries to correct misspelled URLs by performing case-insensitive filename search in requested folder or allowing one misspelling (character insertion/omission/transposition or wrong character).
If, after scanning the folder,
- no matching document is found, Ape proceeds as usual and returns a "document not found" error
- only one document is found that "almost" matches the request, it is returned in the form of a redirection response
- more than one document with a close match is found, then the list of the matches is returned to the client and the client can select the correct option
Quick start
This line is enough to have mod_speling working on your site:
CheckSpelling On
Related articles and topics
Directives
CheckCaseOnly
CheckCaseOnly directive enabled (on) limits the scope of actions of the mod_speling
module to lower/upper case changes. Other possible corrections are not performed.
Syntax
CheckCaseOnly On|Off
Default
CheckCaseOnly Off
Example
CheckCaseOnly On
CheckSpelling
CheckSpelling directive enables mod_speling module functionality.
Syntax
CheckSpelling On|Off
Default
CheckSpelling Off
When enabled, keep in mind that
- the directory scan needed for spelling correction may affect the server's performance when many spelling corrections are performed at a time
- the document trees should not contain sensitive files which could be matched unintendedly by a spelling "correction"
- the module is unable to correct misspelled user names - only filenames or folder names
- spelling corrections are applied strictly to existing files, so a request for /status may be incorrectly treated as "/stats.html" file.
Example
CheckSpelling On
CheckBaseName
CheckBaseName directive performs an extension-insensitive filename check, i.e. if the requested filename exactly matches some existing file in the target folder but their extensions are different, this existing file is shown in response.
Syntax
CheckBaseName On|Off
Default
CheckBaseName Off
Note! This directive is not supported in Apache but such functionality may be realized by recompiling the module with certain parameters.
Example
CheckBaseName On
|