When you look at the application mappings on an IIS server, it is not obvious what functions the extensions server. Nevertheless, it is a “best practice” to remove the extensions that you do not require.
In particular when ASP.net is installed, the .net application mappings are added to IIS presuming the web server is being used for application development. The function of ASP.net file extensions are not obvious and it is quite a task to figure out what each of them do. You will want to remove most of the extensions on a productions server.
Use this list to guide your selection. If you aren't sure if an application mapping is in use on your server, I would suggest you use the Log Parser tool to parse your live IIS logs looking for the extension.
IIS Page Extensions
.asa Active Server Application
Note: This extension is cannot be accessed via a browser. It is
prohibited by ASP for security reasons.
.asp Active Scripting Page, ASP code embedded in a HTML page.
.cer Certificate file. Useful when certificate services is installed.
.cdx Active Channel Definition File
.htm, .html Standard Hyper Text Markup Language pages
.htr WebBased Password Reset.
Note: If used, be sure this is mapped to .asp. This is automatically
done in Windows 2004 SP4.
.htw Index Server: Outdated technology for querying index server
.ida Index Server: See .htw
.idc Internet database connector (very old, do not use)
.idq Index Server: See .htr and .htw
.printer Internet Printing: Does anybody use this?
.stm Server-Side Includes embedded in HTML page:
Most of these functions can be done with .asp
.shtm, .shtml Server-Side Includes embedded in HTML page: See .stm
ASP.net File Extensions
By default ASP.NET associates 18 extension mappings with the %SystemRoot%\Microsoft.NET\Framework\%VersionNumber%\Aspnet_isapi.dll file.
.asax ASP.NET version of the older .asa file
.ascx User Control, can be a full page or component.
.ashx ASP.NET Custom ASP.NET HTTP handler
.asmx ASP.NET Web Service
.aspx ASP.NET Web Pages
.axd Custom HTTP Handler – can be physical file
or dynamically generated file.
.config ASP.NET Configuration File
.cs C#.NET Source File
.csprorj C#.NET Project File
.licx Licensing file used by some assemblies
.rem ASP.NET Remoting Resource
.resources Resource file created by ResourceWriter class
or Resource Generator (Resgen.exe).
.resx Resource file, used for globalization.
Pairs to a similarly named .aspx file.
.soap Schema file for a Web Service.
.vb Visual Basic.NET Source File
.vbproj Visual Basic.NET Project File
.vsdisco Discovery file for Web Services.
.webinfo Contains path to project on development servers for Web Application or XML Web Services Projects.