node.js - 将 GitHub 更新部署到 Azure 托管的 DocPad Node.js 网站会使网站脱机 1-2 分钟

标签 node.js azure github azure-web-app-service docpad

我正在测试 DocPad/Node.js 站点的 GitHub 部署。

我已经完成了部署,但是当向 GitHub 进行新推送时,公共(public)网站在部署过程中将在 1 到 2 分钟内变得不可用。

这对我来说似乎不太合适。

我认为 DocPad 静态 HTML 文件将由 node.js 生成,然后复制到 wwwroot 文件夹 - 从而最大限度地减少任何类型的停机时间。

然而事实似乎并非如此。

在部署网站时,网站访问者会收到以下错误消息:

The page cannot be displayed because an internal server error has occurred.

可以在 https://github.com/Richard-West/DocPadAzureDemo 找到 DocPad/Node.js 部署的副本

如果有任何关于为什么会发生这种情况的见解,以及我是否可以修改任何内容来防止这种情况发生,我将不胜感激。我希望能够随时向网站推送更新,同时不影响任何访问者。

最佳答案

有 2 个选项供您选择:

  1. 您可以自定义部署过程,在将静态 html 文件部署到 wwwroot 之前生成静态 html 文件,了解有关如何执行以下操作的更多信息: http://www.amitapple.com/post/38418009331/azurewebsitecustomdeploymentpart2/ http://www.amitapple.com/post/38419111245/azurewebsitecustomdeploymentpart3/

  2. 您可以使用“插槽”功能,首先部署到暂存站点,一旦暂存站点完全部署并准备好响应请求,您就可以在生产站点和暂存站点之间进行交换,这样访问者就不会受到影响。 更多相关信息: http://azure.microsoft.com/en-us/documentation/articles/web-sites-staged-publishing/

关于node.js - 将 GitHub 更新部署到 Azure 托管的 DocPad Node.js 网站会使网站脱机 1-2 分钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23500009/

相关文章:

azure - 如何使用 Visual Studio 2017 创建 Azure 响应式静态网站?

azure - 调用 Azure 资源的 MOVE 时,204 响应意味着什么(而不是 202)

javascript - 循环数组并检查循环中的 MongoDB 集合(异步)

sql-server - Node/繁琐示例中的表值参数

node.js - 使用 OAuth2 保护 nodejs/sailsjs API

azure - 在 Azure Function 中运行时未找到 HttpRequestMessageExtensions

node.js - 有没有一个简单的工具来下载/安装和升级 Node.JS?

git - 有没有办法制作 PR 但在我的 github 帐户中将 repo 设为私有(private)?

linux - 通过github编辑的文件

Git 跟踪分支