When trying to navigate to a file with the extension .svc when using II7 (that is in Windows Vista and Windows 2008), you may get an error like this:
Server Error in Application "Default Web Site/DotNetNuke_IWeb"
HTTP Error 404.3 - Not Found
Description: The page you are requesting cannot be served because of the Multipurpose Internet Mail Extensions (MIME) map policy that is configured on the Web server. The page you requested has a file name extension that is not recognized, and is not allowed.
Error Code: 0x80070032
Requested URL: http://localhost:80/DotNetNuke_IWeb/DesktopModules/IWebCF/CoreService.svc
Physical Path: C:\Users\Documents\Visual Studio 2005\Projects\IWeb\Website\DesktopModules\IWebCF\CoreService.svc
Logon User: Anonymous
Logon Method: Anonymous
Most likely causes:
- It is possible that a handler mapping is missing. By default, the static file handler processes all content.
- The feature you are trying to use may not be installed.
- The appropriate MIME map is not enabled for the Web site or application. (Warning: Do not create a MIME map for content that users should not download, such as .ASPX pages or .config files.)
What you can try:
- In system.webServer/handlers:
- Ensure that the expected handler for the current page is mapped.
- Pay careful attention to preconditions (e.g. runtimeVersion, pipelineMode, bitness) and compare them to the settings for your application pool.
- Pay careful attention to typographical errors in the expected handler line.
- Please verify that the feature you are trying to use is installed.
- Verify that the MIME map is enabled or add the MIME map for the Web site using the command-line tool appcmd.exe.
Warning: Ensure that this MIME mapping is needed for your Web server before adding it to the list. Configuration files such as .CONFIG or dynamic scripting pages such as .ASP or .ASPX, should not be downloaded directly and should always be processed through a handler. Other files such as database files or those used to store configuration, like .XML or .MDF, are sometimes used to store configuration information. Determine if clients can download these file types before enabling them.
- Open a command prompt and change directory to %windir%\system32\inetsrv.
- To set a MIME type, use the following syntax: appcmd set config /section:staticContent /+[fileExtension='string',mimeType='string']
- The variable fileExtension string is the file name extension and the variable mimeType string is the file type description.
- For example, to add a MIME map for a file which has the extension ".xyz", type the following at the command prompt, and then press Enter:
- appcmd set config /section:staticContent /+[fileExtension='.xyz',mimeType='text/plain']
- Create a tracing rule to track failed requests for this HTTP status code. For more information about creating a tracing rule for failed requests, click here.
More Information... This error occurs when the file extension of the requested URL is for a MIME type that is not configured on the server. You can add a MIME type for the file extension for files that are not dynamic scripting pages, database, or configuration files. Process those file types using a handler. You should not allows direct downloads of dynamic scripting pages, database or configuration files.
Server Version Information: Internet Information Services 7.0.
To resolve this:
1) Select "run" from the Start menu
2) Enter "cmd" and click OK
3) enter "cd c:\windows\Microsoft.Net\Framework\v3.0\Windows Communication Foundation\" and press Enter.
4) Enter "ServiceModelReg -i" and press Enter.
5) WCF will now be installed: