【问题标题】:How can I deploy a new web application to a subdirectory of an IIS site and not have to click "Convert To Application"?如何将新的 Web 应用程序部署到 IIS 站点的子目录而不必单击“转换为应用程序”?
【发布时间】:2012-01-06 16:52:15
【问题描述】:

我正在尝试编写一个在一个机器上运行但部署到远程 QA 服务器的自动部署应用程序。基本上每次在源代码控制中创建分支时,我的自动部署工具都会部署应用程序。现在代码全部部署,但 IIS 不喜欢嵌套的 web.config 文件,除非我使用“转换为应用程序”功能。

请注意,在下面的屏幕截图中,对于刚刚为新的“测试站点”分支创建的测试站点,文件夹“分析”、“调查”、“测量”和“评分”不是应用程序RevECurrent 和 RevENew 上面有这些文件夹。 如果不为每个文件夹实际单击“转换为应用程序”,如何让 web.config 文件在部署新的子目录(如“Test-Site”)时不会生成错误?

【问题讨论】:

  • 这与部署无关。这是 web.config 层次结构的标准 ASP.NET 问题。答:如果没有应用程序或每个“分支”的单独站点,您将无法做您想做的事情。
  • 这个问题似乎更适合serverfault.com,因为它与应用程序部署有关,而不是应用程序开发。
  • 我认为通过开发,他可以使用 System.Web.Management 命名空间来编写一些东西来在他的自动部署过程中执行此操作。

标签: asp.net asp.net-mvc iis build-automation


【解决方案1】:

检查System.Web.Administration namespace,它将允许您与IIS 交互。我用它来添加/删除绑定、添加站点等...我认为它也可以让您在网站下创建应用程序文件夹。

【讨论】:

  • 谢谢。这让我走上了正轨。我相信我需要使用用于 IIS7 的 Microsoft.Web.Administration 命名空间,并且使用 ServerManager 对象似乎允许我连接到远程服务器。谢谢
  • 是的,这是正确的。对此感到抱歉,很高兴我让你走上了正确的道路。祝你的项目好运。
  • 更新了我对这个问题的未来的回答,而不是把他们引向错误的方向。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-29
  • 1970-01-01
  • 2021-04-21
  • 2011-08-06
  • 2020-09-13
相关资源
最近更新 更多