如何在发布时使Web应用程序脱机?

Kon*_*ten 38 publish azure azure-web-sites

很多时候,当我在VS13中点击Publish时,我会让网站进行编译,但在上传时我收到的错误是文件正忙.

更新文件(MyAzureSite\PrecompiledApp.config).
C:...\v12.0\Web\Microsoft.Web.Publishing.targets(4255,5):
错误ERROR_FILE_IN_USE:Web部署任务失败.
(文件'PrecompiledApp.config'正在使用中.有关
详细信息,请访问:http://go.microsoft.com/fwlink/?LinkId = 221672 #ERROR_FILE_IN_USE.)

当我按照提供的链接时,建议我应该启用appOffline规则."当然!",我想,对自己.但是如何?!我用谷歌搜索了它,只是为了获得一堆文件,这些文件应该在发布时取代网站.但是,我没有得到关于如何摆脱我的小问题的信息.

我轻松地从Azure网站下载了一个发布配置文件,现在我正在使用它(你知道,ALT+ B+ H).

现在我通过转到Azure的门户并手动使站点脱机来解决问题.然后我可以发布,之后我将网站上线.非常不切实际和痛苦乏味.

造成这种情况的原因是什么?如何杀死它?

AKh*_*oli 50

您实际上是在发布配置文件(.pubxml)中配置它.只需将元素添加到PropertyGroup,如下所示:

<PropertyGroup>
  <EnableMSDeployAppOffline>true</EnableMSDeployAppOffline>
  ...
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)

更多在此MSDN文档中

  • 遗憾的是,此解决方案仅在直接从VS发布时才有效; 但是,持续部署不会考虑.pubxml文件中的设置或作为MSBuild的命令行参数传入 (7认同)
  • 我发现这个 MSBUILD 参数已开始用于 CI。自从我开始使用它以来,我还没有看到错误... /p:EnableMSDeployAppOffline=true (3认同)
  • 惊人的!UI 无法访问的另一个有价值的设置。爱它! (2认同)

And*_*ica 11

Azure的应用服务部署任务有此复选框(从2.0版本起),下额外的部署选项:以应用程序脱机.检查一下,你应该好好去.

使应用程序脱机:在同步操作开始之前,通过将app_offline.htm文件放在Web App的根目录中,选择使AzureRM Web App脱机的选项.同步操作成功完成后,将删除该文件.

截图: 在此输入图像描述