问题
My ServiceStack web service works fine in IIS Express (VS 2012) and when deployed to Windows Azure, but it does not work under IIS 8 on Window 8.
I am getting 404 Not Found Error
. My web.config
has both sections defined for IIS Express and the web server.
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.5">
<assemblies>
<add assembly="System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
</assemblies>
<buildProviders>
<add extension=".cshtml" type="ServiceStack.Razor.CSharpRazorBuildProvider, ServiceStack.Razor" />
</buildProviders>
</compilation>
<httpRuntime targetFramework="4.5" />
</system.web>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<handlers>
<add path="*" name="ServiceStack.Factory" type="ServiceStack.WebHost.Endpoints.ServiceStackHttpHandlerFactory, ServiceStack" verb="*" preCondition="integratedMode" resourceType="Unspecified" allowPathInfo="true" />
</handlers>
</system.webServer>
</configuration>
Solution:
Just figured out, through further research, that this resolved my problem:
- I switched the application pool to Integrated Mode.
I added the following to
web.config
:<system.webServer> <modules runAllManagedModulesForAllRequests="true"/> </system.webServer>
回答1:
Repeating the solution as an answer, to make it clear what the issue was:
by doing some more searching i found 2 suggestions that resolved my problem:
- switched application pool to Integrated mode
added the following to web.config
<system.webServer> <modules runAllManagedModulesForAllRequests="true"/>
来源:https://stackoverflow.com/questions/16529934/404-not-found-error-when-running-servicestack-on-iis8