4

我的 ServiceStack Web 服务在 IIS Express (VS 2012) 和部署到 Windows Azure 时运行良好,但在 Window 8 上的 IIS 8 下无法运行。

我越来越404 Not Found Error。Myweb.config为 IIS Express 和 Web 服务器定义了两个部分。

<?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>

解决方案:

通过进一步的研究,刚刚发现这解决了我的问题:

  1. 我将应用程序池切换到Integrated Mode
  2. 我将以下内容添加到web.config

    <system.webServer>
      <modules runAllManagedModulesForAllRequests="true"/> 
    </system.webServer>
    
4

1 回答 1

2

重复解决方案作为答案,以明确问题所在:


通过进行更多搜索,我发现了 2 个解决我的问题的建议:

  1. 将应用程序池切换到集成模式
  2. 将以下内容添加到 web.config

     <system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/> 
    

于 2013-05-14T02:07:20.657 回答