HTTP Error 404.3 - Not Found" while browsing wcf service on Windows Server 2008(64bit)

92

I am developing an application based on .Net Framework 3.5 sp1 and hosted on windows server 2008(64bit).

While browsing wcf service (.svc) locally every things is ok but while browsing with full domain URL, it got an error.

local address is like this: http://localhost/MyService.svc

and domain address is like this: http://MySite.ir/MyService.svc

by the way pages (.aspx) and other files work correctly both on localhost and with domain address.

any Idea would be appreciated

Here is detailed error:


HTTP Error 404.3 - Not Found

The page you are requesting cannot be served because of the extension configuration. If the page is a script, add a handler. If the file should be downloaded, add a MIME map. Detailed Error Information

Module: StaticFileModule

Notification: ExecuteRequestHandler

Handler: StaticFile

Error Code: 0x80070032

Requested URL: http://MySite.ir:80/MyService.svc

Physical Path: D:\inetpub\vhosts\MySite.ir\httpdocs\MyService.svc

Logon Method: Anonymous

Logon User Anonymous

wcf
asked on Stack Overflow Jul 18, 2010 by Mori

7 Answers

231

Please make sure you've activated WCF components from here.

Or alternate and easy way is, go to control panel -> Turn Windows feature on or off -> and make sure you've all the options ticked as mentioned in below screenshot.

enter image description here

You might need to activate each box and accept in case you get errors when activating all features at once

answered on Stack Overflow Aug 12, 2014 by Nirav Mehta • edited Mar 21, 2018 by Mauricio Gracia Gutierrez
27

OK, here is the answer:

Go to Handler Mappings | Add Handler Manager --> And then add below information

Request Path: *.svc

Type: System.ServiceModel.Activation.HttpHandler, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089

Name: svc-Integrated

answered on Stack Overflow Jul 19, 2010 by Mori
11

If anyone has this issue on Windows Server 2012, Bill Moon's answer here solved it for me:

"For Windows Server 2012... From the Server Manager, click on Add roles and features, select the appropriate server, then select Features. Under .NET Framework 4.5 Features, you'll see WCF Services, and under that, you'll find HTTP Activation."

answered on Stack Overflow May 23, 2014 by Will • edited May 23, 2017 by Community
8

I have windows 10 in my laptop and using visual studio 2015 for WCF development. WCF is running fine in visual studio but when hosted in IIS I got the same error.

I checked IIS handler. svc extension was missing. So I tried to add new handler in IIS as suggested by Mori in first answer. I didn't find type "System.ServiceModel.Activation.HttpHandler".

So I opened "Turn windows features On or Off" and installed features as highlighted in screen shot.

This worked for me.

enter image description here

answered on Stack Overflow Feb 15, 2018 by Anil • edited Jun 20, 2020 by Community
0

If you're using .Net 4.x, the PublicKeyToken is 31bf3856ad364e35.

However, following this post about installing WCF Services properly in IIS, the handler was set up for me.

answered on Stack Overflow Nov 22, 2013 by Thomas Hagström • edited May 23, 2017 by Community
0

I wanted to add this as a comment to the answer but didn't have enough rep for it. I tried running ServiceModelReg and aspnet_regiis.exe with various flags and added HTTP Activation feature but it still didn't work. Even using the Handler mapping UI in IIS didn't work since it could not find System.ServiceModel.Activation.HttpHandler. What finally worked was adding the handler Mori mentions manually to my web.config file.

<system.webServer>
    <handlers>
      <add name="svc-Integrated" path="*.svc" verb="GET,HEAD,POST,DEBUG" type="System.ServiceModel.Activation.HttpHandler, System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" modules="ManagedPipelineHandler" scriptProcessor="" resourceType="Unspecified" requireAccess="Script" allowPathInfo="false" preCondition="integratedMode" responseBufferLimit="4194304" />

My project was running .Net 3.5 and IIS 7.5 on Windows 7 and IIS 7.0 on Win Server 2008 R2.

answered on Stack Overflow Mar 12, 2015 by Janspeed
0

Try unchecking WCF HTTP activations from "Turn Windows featured on or off" window (See here) and re-install by going to

%windir%\Microsoft.Net\Framework\v3.0\Windows Communication Foundation\

and execute ServiceModelReg -i

answered on Stack Overflow Dec 23, 2015 by Derviş Özçelik • edited Dec 23, 2015 by Stefan Ferstl

User contributions licensed under CC BY-SA 3.0