URLSpellCheck Docs
URLSpellCheck is an IIS server module that prevents 404 HTTP errors on the fly by fixing misspelled URLs, including wrong extensions and missing extensions.- Installation
- Using the Settings Manager
- Spelling Errors Handled by URLSpellCheck
- File Extension Mapping
- Spell Checking Form Submissions
- Types of Matches
- Using a Custom Multiple-Match Template
- Images and Other Non-Page Links
- System Requirements
Installation
Installing URLSpellCheck is very simple. Once you have downloaded the installer executable from the Port80 Web site, double click on the file to begin the URLSpellCheck setup program.The URLSpellCheck setup program will guide you through the steps necessary to complete the installation. You will be asked to accept the license agreement and to choose an installation destination. The default installation location is C:\Program Files\Port80\URLSpellCheck.
Files Installed by URLSpellCheck
URLSpellCheck installs the following files in the following default locations:
In C:\%SystemRoot%\System32\inetsrv\
| sc_isapi.dll | URLSpellCheck ISAPI filter DLL |
In C:\Program Files\Port80\URLSpellCheck\
| URLSpellCheck Properties.exe | Settings Manager |
| w3svcupd.exe | Installer utility for updating metabase |
| Documentation.htm | Documentation/Help for URLSpellCheck |
| ReleaseHistory.htm | Release history for URLSpellCheck |
| TechSupport.htm | Information about obtaining technical on URLSpellCheck |
| Activation.txt | Activation Help |
| Install.log | Installation log file |
| Uninstall.exe | Uninstaller for URLSpellCheck |
In C: \Program Files\Port80\URLSpellCheck\files\
Supporting files used for the Documentation
Using the Settings Manager
The Settings Manager can be launched from the Port80/URLSpellCheck program group in the Start menu, or directly by running URLSpellCheck.exe. The Settings Manager controls the operation of URLSpellCheck for any Web site (virtual server) provisioned on the computer. On the left side of the Settings Manager is a list of all the Web Sites (virtual servers) that are available on the computer. Use this list to select the Web site whose settings you want to change.
- To enable or disable URLSpellCheck for a given Web site:
Select the site to enable (or disable) from the Web sites list and check (or uncheck) the Enable URLSpellCheck checkbox located above the configuration settings, on the right side of the interface. - To configure URLSpellCheck settings for a particular Web site:
Select the site from the Web Sites list. The controls on the Settings Manager will reflect the current settings for that Web site. Any changes you make will take effect only for the site that is selected.
After making any changes on the URLSpellCheck Settings Manager, you must press either the "Apply" or the "OK" button in order for the changes to take effect. OK dismisses the Settings Manager dialog, Apply does not. Click "Cancel" to abandon any changes and exit the Settings Manager.
Spelling Errors Handled by URLSpellCheck
In general, URLSpellCheck looks for four types of spelling errors:- One missing character
- One extra character
- Two transposed characters
- One wrong character
http://yourdomain/tet.html
http://yourdomain/testt.html
http://yourdomain/tset.html
http://yourdomain/text.html
The same would be true if the error were in a directory name, rather than the file name. Suppose test.htm were in a directory called test (/test/test.html). Now, any of the following URLs would result in a match:http://yourdomain/testt.html
http://yourdomain/tset.html
http://yourdomain/text.html
http://yourdomain/tet/test.html
http://yourdomain/testt/test.html
http://yourdomain/tset/test.html
http://yourdomain/text/test.html
Finally, URLSpellCheck will also catch similar errors that occur in the file extension. All of the following would result in a match to test.html:http://yourdomain/testt/test.html
http://yourdomain/tset/test.html
http://yourdomain/text/test.html
http://yourdomain/test.htm
http://yourdomain/test.htmll
http://yourdomain/test.htlm
http://yourdomain/test.htnl
URLSpellCheck can find one error at each node in the request URL. The concept of a "node" refers to the file name itself, or any of the directory names in the path. Thus, supposing the existence of the file test.html located in the path /test1/test2/test3, URLSpellCheck would successfully match a URLs such as these:http://yourdomain/test.htmll
http://yourdomain/test.htlm
http://yourdomain/test.htnl
http://yourdomain/tet1/testt2/tset3/tezt.htm
http://yourdomain/test/tess2/tets3/tesst.htm
http://yourdomain/test/tess2/tets3/tesst.htm
File Extension Mapping
URLSpellCheck also has two optional features that apply only to file extensions and that fix errors more severe than those covered by the four standard cases.- URLSpellCheck can optionally match wrong file extensions -- even if the error would not be caught by the standard URLSpellCheck mechanism. For example, if this feature were enabled, a request for a file that doesn't exist called index.html would match one that does exist called index.asp.
To enable this feature for a Web site, check "Match file names with wrong extensions" in the Settings Manager.
- URLSpellCheck can also optionally match missing file extensions. When this feature is enabled, the URL http://yourdomain/test will match the file test.html in your Web site's root directory. Note, however, that this will not happen if there is a directory called "test" in the root directory -- valid directory names always take precedence over possibly-mistyped file names.
To enable this feature for a Web site, check "Match file names without extensions" in the Settings Manager.
Spell Checking Form Submissions
URLSpellCheck does not operate on form submissions that use the POST method. For form submissions that use the GET method, and in general for requests that have query string data appended to the URL, URLSpellCheck functions normally.However, URLSpellCheck will not spell check the query string: It operates only on the part of the URL to the right of the / representing the Web site's document root and to the left of the ? representing the beginning of the query data.
If URLSpellCheck corrects a spelling error in a GET request with query data, resulting in a single match, it will redirect the request to the matching file, preserving the query data. In the case of a multiple match, the query data will be appended to each of the links on the multiple match page.
Types of Matches
URLSpellCheck does two types of matches: single matches and multiple matches.A single match occurs when URLSpellCheck finds only one file that matches a misspelled URL. For single matches, the default action taken by URLSpellCheck is to redirect the request to the matching page or other resource. The practical effect will be as if the user had typed the correct URL (or followed a correctly-spelled link) instead of the misspelled one. Alternatively, URLSpellCheck can generate a page displaying a link to the single match.
A multiple match occurs when URLSpellCheck finds two or more files that match a misspelled URL. For multiple matches, URLSpellCheck returns an HTML page indicating that there are multiple versions of the requested resource available, and providing a list of links from which the user can choose the best match. Since there is more than one file that might match the requested resource, it would not be appropriate to redirect automatically.
The default page returned for a multiple match is generated by URLSpellCheck. Alternatively, you can use a custom template so that the multiple match page will retain the look and feel of your site. For instructions on using a custom template for multiple matches, see the topic Using a Custom Multiple Match Template.
Using a Custom Multiple-Match Template
Since the default multiple-match page is quite plain, URLSpellCheck provides the option of using your own customized multiple-match template. To use this option, you must provide the path to the template using the Settings Manager. To enable the multiple-match template, check "Display customized template for multiple matches" and then enter the path of the template file (or click the "Browse..." button to browse for the file).To create a custom multiple-match template, simply make an ordinary HTML page and place the following special tag anywhere in the Body section. Wherever you place this tag, the list of links to the files matching the request URL will be printed out on the page:
[LIST]
You can optionally add a second special tag, if you would like the original request URL to be printed out. Once again, place it wherever you want the URL to appear in the page:
[PAGENAME]
Images and Other Non-Page Links
Normally, single matches will work for any file that is embedded or included in a page using an URL reference. This means, for example, that a misspelled URL in the src attribute of an image element will be transparently repaired by means of redirection to the correct file.
However, if a misspelled URL in a src attribute matches more than one file, the image link will remain broken, since it is not possible to display a multiple match list in place of the image on the page. The same limitation applies other non-page link types, such as external CSS stylesheets, JavaScript files, or embedded binary objects.
System Requirements
URLSpellCheck is compatible with the following:- IIS 6.0 (Windows Server 2003)
- IIS 5.0 (Windows 2000 Server)
- IIS 4.0 (NT 4.0 Server)
- IIS 5.1 (Windows XP)*
* Since Windows XP lacks a true "server" configuration, Port80 Software neither recommends nor supports the use of its software on Windows XP (and the associated version of IIS) in production environments. The Windows XP environment is supported exclusively as an evaluation platform.
back to top