【问题标题】:500.22 for subdirectories files on root ASP.NET application with child virtual directory ASP.NET MVC application500.22 用于具有子虚拟目录 ASP.NET MVC 应用程序的根 ASP.NET 应用程序上的子目录文件
【发布时间】:2016-08-03 10:16:08
【问题描述】:

我正在尝试整合以下架构:

  • /(根):ASP.NET WebForms 4.6 应用程序。
  • /SPA(虚拟目录):ASP.NET MVC 4.6 应用程序。

为了清楚起见,这里是 IIS Express 配置:

<site name="Redacted.Axis.Web.UI.SingleApp-Site" id="2">
    <application path="/" applicationPool="Clr4IntegratedAppPool">
        <virtualDirectory path="/" physicalPath="C:\Projects\Axis\Dev\PocInternational\Web\Redacted.Axis.Web.UI.App" />
    </application>
    <application path="/SPA" applicationPool="Clr4IntegratedAppPool">
        <virtualDirectory path="/" physicalPath="C:\Projects\Axis\Dev\PocInternational\Web\Redacted.Axis.Web.UI.SingleApp" />
    </application>
   <bindings>
       <binding protocol="http" bindingInformation="*:4010:localhost" />
   </bindings>
</site>

它们位于单独的 Web 项目(UI.App 和 UI.SingleApp)上。我希望他们共享相同的身份验证。我已经设法使用通用机器密钥和相同的身份验证/表单配置使其工作。

我的最后一个问题是,没有提供根应用程序下的静态文件,例如 /CSS/site.css 或 /JS/jquery.js。我都收到了 500.22 错误。

假设这个错误意味着我应该处于经典模式,但 WebForms 应用程序到目前为止在集成模式下运行良好(默认.aspx 或 login.aspx 在 root 工作)。

也可能是system.web中定义的一些模块不在system.webServer中。但他们是。

我在两个 web.config 文件中都有这个:

system.webServer/validation@validateIntegratedModeConfiguration=false
systel.webServer/modules@runAllManagedModulesForAllRequests=true

子 MVC 应用程序的静态文件可以正常工作,例如 /SPA/Content/sites.css。

在我使用 MVC 应用程序添加虚拟目录之前,WebForms 应用程序运行良好。我必须更改的唯一另一件事是在根应用程序的所有 web.config 节点上添加 location@path=.@inheritInChildApplications=false,以便 MVC web.config 正常工作。

肯定有什么小事,但我不能指望它......

【问题讨论】:

    标签: asp.net-mvc webforms web-config virtual-directory


    【解决方案1】:

    发帖权。

    我开始认为我在根 web.config 中的位置标签与它有关。

    我找到了答案here

    对于懒惰的人, validateIntegratedModeConfiguration 必须在位置标签之外。你可以有两个 system.webServer 部分,没关系(但不是两个验证标签)。

    <system.webServer>
        <validation validateIntegratedModeConfiguration="false" />
    </system.webServer>
    <location path="." inheritInChildApplications="false">
        <system.webServer>...</system.webServer>
    </location>
    

    【讨论】:

    • 节省了我数小时的研究时间。
    猜你喜欢
    • 2011-01-23
    • 2011-11-22
    • 2010-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-15
    相关资源
    最近更新 更多