【问题标题】:ASP.NET Virtual Path Maps To Another Application Which Is Not AllowedASP.NET 虚拟路径映射到另一个不允许的应用程序
【发布时间】:2013-10-17 03:01:33
【问题描述】:

我的网站在多台服务器上构建时没有任何问题。
但是,当我在同一台机器上将它从一个文件夹复制/移动到另一个文件夹时:我开始收到错误

虚拟路径映射到另一个不允许的应用程序。

我做错了什么?

【问题讨论】:

  • 问题是什么?
  • 您应该将答案分开并将其作为答案发布。
  • 我在SVN中切换分支后也看到了这个;即使我重建了解决方案,我也不得不在 IIS 中重新启动网站。

标签: asp.net iis hosting


【解决方案1】:

此问题的根源在于,当将 ASP.NET 网站复制到新文件夹时,与解决方案“虚拟路径”相关的属性设置设置为文件夹名称而不是根目录。解决方案是将虚拟路径设置从文件夹名称更改为“/”。

这可以通过右键单击项目并打开属性对话框找到:解决方案->属性->虚拟路径->更改为“/”

【讨论】:

    【解决方案2】:

    这不是你的错误发生的原因,但它可能对研究问题的人有用。

    如果您的 Web 应用程序作为应用程序在另一个 IIS 站点中运行(通过 IIS 管理工具设置)并尝试通过 HttpResponse.Redirect 等方式访问另一个站点的资源,请确保该项目未设置在 Visual Studio 中使用单独的 IIS。如果是这样,它可能在与站点其他部分不同的 IIS 中启动。

    【讨论】:

      【解决方案3】:

      附加检查:缺少 global.asax 也会导致同样的错误。

      【讨论】:

        【解决方案4】:

        如果您正在创建一个新的 HttpContext 并调用任何外部 服务,它也会导致同样的错误。

        关键是你不应该创建新的HttpContext,改变现有的 满足您的需求。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2016-01-31
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-11-02
          • 1970-01-01
          • 1970-01-01
          • 2011-03-14
          相关资源
          最近更新 更多