【问题标题】:How to publish ASP.NET Web API without Visual Studio?如何在没有 Visual Studio 的情况下发布 ASP.NET Web API?
【发布时间】:2014-04-08 21:49:16
【问题描述】:

如何在没有 Visual Studio 的情况下发布 ASP.NET Web API?

有一个外部服务器,其中必须只有二进制文件或创建的项目。

如果我使用本地 IIS 上的工作室发布到本地 IIS - 没问题。但我现在需要将它发布到远程 Windows 服务器,那里没有任何 Visual Studio,只有 IIS 和 RDP 访问。

我尝试从 IIS 管理工具创建一个新网站,分配经典 AppPool,将新网站分配到物理路径,将文件从开发 PC 复制到该路径。

而且它只是不起作用并且没有显示任何错误......我该如何解决这个问题?

【问题讨论】:

    标签: visual-studio iis deployment asp.net-web-api publish


    【解决方案1】:

    您可以研究多种发布机制来在不使用 Visual Studio 的情况下发布您的网站。开箱即用,您可以利用 Publish Profiles,听起来您已经使用它在本地发布,您可以将其扩展为使用 Web Deploy 或 FTP 发布 - 不过,两者都需要在您的 Web 服务器上设置额外的服务。

    网络部署: http://www.iis.net/downloads/microsoft/web-deploy

    如何:在 Visual Studio 中使用一键发布部署 Web 项目: http://msdn.microsoft.com/en-us/library/dd465337(v=vs.110).aspx

    选择要使用的发布机制后,您可以执行以下命令来构建和发布,无需 Visual Studio:

    msbuild MyProject.sln /p:DeployOnBuild=true /p:PublishProfile=ProfileName
    

    ** 注意:长期而言,我建议您在构建服务器上构建和部署您的项目。对于概念验证或不重要的项目,上述内容是可以的。

    【讨论】:

    • 很好的答案,汤姆。你能提供一些资源来了解构建服务器吗?
    • @ClickOk,就个人而言,我在Atlassian BambooThoughtWorks Go 方面取得了很大成功,对于自动化部署,Octopus Deploy
    【解决方案2】:

    基于上面Tom 提出的好主意,您还可以从 Visual Studio 创建一个部署包,将 ZIP 上传到目标服务器,然后通过 IIS 管理器手动安装它。该过程记录在 .NET 4.5 https://msdn.microsoft.com/en-us/library/dd465323(v=vs.110).aspx

    这允许您将构建和部署步骤分开,这是我的用例所需要的,以便系统管理员可以将我的 Web API 应用程序部署到新服务器,而无需精通 msbuild 或 Visual Studio。 :)

    【讨论】:

      【解决方案3】:

      我只是用File System来发布,然后所有的API文件都将输出到目标位置,我将这些文件复制到本地或其他服务器上的任何IIS网站物理文件夹,重启后API可以工作那个 IIS 网站。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-09-05
        • 1970-01-01
        • 2013-09-20
        • 2020-01-22
        • 1970-01-01
        • 2012-01-14
        相关资源
        最近更新 更多