【问题标题】:Getting site under construction message after azure webapp deploymentazure webapp部署后获取网站建设中消息
【发布时间】:2021-07-21 10:53:06
【问题描述】:

在将我的 webapp 发布(使用 visual studio webdeploy )到 azure 时出现网络故障。后来我再次尝试,然后我收到以下错误消息。

错误 5 Web 部署任务失败。 (Web Deploy 无法修改目标上的文件“NewRelic.Agent.Core.dll”,因为它已被锁定 通过外部过程。为了允许发布操作 成功,您可能需要重新启动应用程序才能发布 锁定,或使用 AppOffline 规则处理程序用于 .Net 应用程序 您的下一次发布尝试。了解更多信息: http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_FILE_IN_USE.) 0 0 ABCD.ABCD.ABCD.ABCD

所以我重新启动了我的 webapp 几次,但同样的例外。然后我尝试使用 FTP。那也是失败的。几分钟后,我再次尝试使用 Visual Studio Web 部署,然后发布成功。但现在我正在建设一个 503 错误站点。有什么想法吗?

注意:我也尝试过离线应用。没希望

【问题讨论】:

  • 好吧,错误告诉你问题是什么。也许 dll 被锁定在远程服务器上。你如何使用 dll 也许你的代码中存在关于你如何使用的问题正在创建 dll 的实例并释放资源。在我看来,如果没有看到您现有的代码是什么样子,我真的无法判断
  • 我正在使用 newrelic 进行 webapp 分析。我的代码没有问题。它一直工作到今天早上。但是在部署失败后(由于网络问题),我无法再次成功部署它
  • 你不能假设它不工作,但是如果它刚刚启动..那么我会联系 ISP 并询问你的进程是否与 IIS 或他们使用的任何类型的网络服务器有关可以重新启动..还有一种方法可以附加到远程进程..?
  • 感谢您的宝贵时间 :) 。我解决了我的问题。解决方案是从根目录中删除由于我添加到发布配置文件中的应用程序离线规则而创建的离线 html:D 抱歉打扰您
  • 我遇到了完全相同的问题。您的评论很有帮助,请将其发布为已接受的答案。

标签: c# azure visual-studio-2012 web-deployment azure-web-app-service


【解决方案1】:

我解决了我的问题。解决方案是从根目录(在服务器上)中删除离线 html (APP_OFFLINE.html),该目录是由于我添加到发布配置文件中的应用离线规则而创建的。

实际问题: <EnableMSDeployAppOffline>true</EnableMSDeployAppOffline> 在您的发布配置文件中,实际用于在部署时使您的应用程序脱机。部署完成后,MSDeploy 工具会自动删除 APP_OFFLINE.html。但是,不知何故,在上述情况下并没有发生。

所以我的建议是,看看你网站的根目录,如果有一个名为 APP_OFFLINE.html 的文件,就删除它。

【讨论】:

  • 我遇到了同样的问题,正在我的本地目录中搜索 offline.html。但是文件位于天蓝色服务器上......
  • @kabaehr 是的,app_offline.html 将被上传到你在服务器中的应用程序目录
  • 在 Azure Functions 应用中遇到了同样的问题。删除 APP_OFFLINE.htm 然后一切正常。 (Azure 存储资源管理器让查找和删除文件变得轻而易举。)
  • 这样的文件是怎么出现的?
  • 谢谢!.. 无论部署是否成功,都很难找到发生这种情况的原因!
【解决方案2】:

这次中断的罪魁祸首:app_offline.htm

这是 Azure Kudu 服务的一个已知错误,它间歇性地无法从服务器删除 app_offline.htm 文件 - https://github.com/projectkudu/kudu/issues/2949。

添加此文件是为了暂时关闭网站,并应在网站升级后将其删除。但这种情况并非始终如一地发生。截至 2019 年 11 月,该错误仍然存​​在。

有一个简单的解决方法:

  • 在 Azure 中打开您的应用服务。在左侧面板上,滚动并找到高级工具。单击“前往”。这会将您带到 Kudu 服务以获取您的应用服务。
  • 在导航栏上,单击工具 > Zip 推送部署。
  • 列表中会有一个文件 app_offline.htm。
  • 单击左侧的删除按钮并将其删除。而已!您的应用现在应该已经启动了。

永久解决方案是:

通过添加密钥告诉 Kudu 根本不要创建此文件 SCM_CREATE_APP_OFFLINE 在您的应用设置中具有 0 值。

【讨论】:

【解决方案3】:

当使用发布配置文件从 Visual Studio 发布并且发布失败并出现错误时,可能会发生此错误。

解决办法是解决发布错误。

在我的情况下,错误与锁定的文件有关。在发布之前停止应用服务解决了这个问题。

【讨论】:

    【解决方案4】:

    仅供参考,今天发生在我身上,通过 ADO CI/CD 自动部署。看起来 Web 应用程序本身的 .exe 上 ERR_FILE_IN_USE 的最后一次部署失败,因此回滚似乎不成功。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-30
      • 1970-01-01
      相关资源
      最近更新 更多