问题
I have built a simple WCF Service and deployed it to IIS6, and I'm noticing that it works in my Dev and Staging environments, but not Production. Every time I try to hit the service metadata link, I get a 404 page.
I've checked IIS config everywhere I can think of and they're identical, so the only difference I can think of is that the Production environment is load balanced.
Does anyone know of any issues with running a WCF service behind a load balancer, and how can I get around that? Am I on the wrong track, is there another common problem I should look into?
回答1:
You need to setup wild card mapping on IIS6. This link seems like a good step by step guide.
Try reading up on the differences between the integrated pipeline vs classic pipeline on IIS7
回答2:
For me .svc was already mapped to the aspnet_isapi.dll as per AnthonyWJones answer:
I kept getting 404's and nothing in the logs (C:\WINDOWS\system32\LogFiles\W3SVC1) helped, all my WCF settings and web.config were textbook examples. I triple checked all the permissions...
What my problem turned out to be was that I had built my WCF service in .Net 4.0, after I installed ASP.net 4.0 using aspnet_regiis -i -enable
it worked straight away:
来源:https://stackoverflow.com/questions/341438/wcf-service-hosted-in-iis6-gets-404-in-production