ASP.NET 虚拟路径映射到另一个不允许的应用程序
Posted
技术标签:
【中文标题】ASP.NET 虚拟路径映射到另一个不允许的应用程序【英文标题】:ASP.NET Virtual Path Maps To Another Application Which Is Not Allowed 【发布时间】:2013-10-17 03:01:33 【问题描述】:我的网站在多台服务器上构建时没有任何问题。 但是,当我在同一台机器上将它从一个文件夹复制/移动到另一个文件夹时:我开始收到错误
虚拟路径映射到另一个不允许的应用程序。
我做错了什么?
【问题讨论】:
问题是什么? 您应该将答案分开并将其作为答案发布。 我在SVN中切换分支后也看到了这个;即使我重建了解决方案,我也不得不在 IIS 中重新启动网站。 【参考方案1】:此问题的根源在于,当将 ASP.NET 网站复制到新文件夹时,与解决方案“虚拟路径”相关的属性设置设置为文件夹名称而不是根目录。解决方案是将虚拟路径设置从文件夹名称更改为“/”。
这可以通过右键单击项目并打开属性对话框找到:解决方案->属性->虚拟路径->更改为“/”
【讨论】:
【参考方案2】:这不是你的错误发生的原因,但它可能对研究问题的人有用。
如果您的 Web 应用程序作为应用程序在另一个 IIS 站点中运行(通过 IIS 管理工具设置)并尝试通过 HttpResponse.Redirect 等方式访问另一个站点的资源,请确保该项目未设置在 Visual Studio 中使用单独的 IIS。如果是这样,它可能在与站点其他部分不同的 IIS 中启动。
【讨论】:
【参考方案3】:附加检查:缺少 global.asax 也会导致同样的错误。
【讨论】:
【参考方案4】:如果您正在创建一个新的 HttpContext 并调用任何外部 服务,它也会导致同样的错误。
关键是你不应该创建新的HttpContext,改变现有的 满足您的需求。
【讨论】:
以上是关于ASP.NET 虚拟路径映射到另一个不允许的应用程序的主要内容,如果未能解决你的问题,请参考以下文章