Apache Web Server Forum

We just moved our website to a new server running Apache 2.2 and php 5. Prior to the move, mod_speling worked just fine. Now, however, it only seems to work if the only the right most file/folder needs to be fixed. What we mainly use it for is capitalization:

This is our correct URL:

http://www.example.com/Folder_One/Folder_Two/index.html

The following cases work fine because only the right most file needs to be modified:

As documented [httpd.apache.org], mod_speling corrects only single or minor errors.

Best practice to avoid this problem --and the huge problem you'll realize when you try to correct this with mod_rewrite-- is to always use all-lowercase filepaths. If you have access to the server config, and use a RewriteMap to implement the tolower server function, you can mix case on URLs, but not on filepaths.

Any part of /folder_one/folder_two/index.html that does not actually exist as a file or directory probably won't be corrected by mod_speling. If any part of that path is virtual, then it'll be up to the script that handles it (generates the pages at that level) to correct the path.