【问题标题】:How to use IIS app_offline.htm file with Azure如何在 Azure 中使用 IIS app_offline.htm 文件
【发布时间】:2014-03-08 23:18:10
【问题描述】:

我有一个设计精美的 app_offline.htm 文件,我想在我做诸如备份数据库之类的事情时定期在我的网站上显示它。在具有真实文件系统的服务器上,这不是问题:我只需将 app_offline.htm 复制到我的应用程序的根目录,IIS 就会发挥它的魔力并将所有请求重定向到该文件。

但是,我使用的是 Azure,因此没有真正的文件系统,也没有简单的方法将文件从一个位置移动到另一个位置。

如何让 app_offline.htm 与 A​​zure 完美配合?

【问题讨论】:

    标签: azure filesystems app-offline.htm


    【解决方案1】:

    我想我会添加这个,我还没有看到它提到过。实际上,您也可以通过 Visual Studio(或 WebMatrix)的网络发布来做到这一点,只需将 app_offline.htm 放在 项目的根目录 - 与您的主目录相同的级别网络配置。完成后,只需将其重命名并重新部署即可重新上线。 2 次点击 - 简单。

    手动选项是通过 FTP 将其放入您的 /site/wwwroot

    一个小秘密,您的网站文件、样式表等都无法访问。因此,将您的包含文件放入一个 azure blob 容器和 viola。

    【讨论】:

      【解决方案2】:

      实际上存在一个真正的文件系统,因为每个 VM 实例都运行在 Windows 2008 Server(SP2 或 R2 SP1)上。要亲自查看此内容,请为您的部署启用远程桌面并连接到正在运行的实例。

      了解这一点后,您应该能够设置一种机制,根据某种类型的管理命令将 app_offline.htm 文件复制到您的应用根目录。您只需要确保您的每个 Web 角色实例都执行此操作。

      【讨论】:

      • 假设我将 app_offline.htm 保存在根目录附近的“/images”目录中。所以你说在将包部署到 Azure 之后,我应该能够执行管理命令或批处理文件将 app_offline.htm 从“/images”复制到“/”,并且我可以从远程桌面完成这一切联系?正如我在下面提到的,我的共同创始人是团队中的 Azure 专家,所以请原谅我在这方面的无知。我的印象是,一旦新的位被推送到云中,文件 I/O 类型的操作就很难在 Azure 上执行。
      • 如果文件系统不属于软件包的一部分,则对文件系统进行持久更改更具挑战性。但是,如果您有一种复制文件的机制(例如一个监视表或队列的简单进程),则实现起来很简单。大卫是正确的。
      【解决方案3】:

      大卫为您提供了一个很好的答案。但是,您可能会错过 Azure 可以为您做什么。通过运行多个实例并使用为您提供三重备份的 SQL Azure,您应该能够几乎消除 Azure 的停机时间。您还可以使用 http://msdn.microsoft.com/en-us/library/ff951624.aspx 备份 SQL Azure

      【讨论】:

      • 我的联合创始人实际上是我们团队中的 Azure 专家,我们已经在使用 SQL Azure 运行多个实例。然而,今天早些时候,他需要更新数据库模式,这意味着该网站的一部分已经关闭了几分钟。当我点击该站点时,我被重定向到我的主错误页面。但我宁愿在那几分钟内将 app_offline.htm 文件放在根目录中。我只是觉得在 Azure 部署中执行与文件 I/O 相关的事情并非易事。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多