Friday, May 1, 2009

How to enable shtml extension on IIS 6.0

Problem:
 
You have problem with the .shtml pages. You have IIS 6 installed using default settings. Every thing seems working but when you open .shtml page it returns you an error "404 Not Found".
 
Resolution:
 
Shtml and shtm are handled with 'C:\WINDOWS\system32\inetsrv\ssinc.dll', as you will see the following application extensions under 'Home Directory' -> 'Configuration' -> 'Application Extensions'.

.shtm   C:\WINDOWS\system32\inetsrv\ssinc.dll
.shtml   C:\WINDOWS\system32\inetsrv\ssinc.dll

If these extensions are not in the list (they are default) they may have been removed.  This is the first thing to check.  Once they are in the list for your site go into Web Service Extensions' just under the (local computer) object at the top of the IIS Manager tree and make sure 'Server Side Includes' is set to 'Allowed'. By default, it's set prohibited

Note that the 'Server Side Includes' Web Service Extension has the ssinc.dll listed as the required file.

If its not set to allowed, IIS 6 will throw a 404, which is the Standard for a check like this to be as obscure as possible.

As long as you have the extension paths on the site for .shtml, etc and the Web Service Extension for 'Server Side Includes' set to 'Allowed', you should no longer get a 404 when accessing an .shtml page.

No comments:

Post a Comment