【问题标题】:When publishing website on azure, webjobs are deleted在 azure 上发布网站时,webjobs 被删除
【发布时间】:2014-06-28 08:20:19
【问题描述】:

当我在现有站点上发布一个站点时,我创建了多个 Web 作业,这会删除服务器上的所有文件,并且所有 Web 作业都会被删除。

我认为这是因为 webjobs 存储在 App_Data 文件夹中。删除 APP_Data 目录时,作业也被删除。

如何避免在发布时删除 app_data 文件夹?

【问题讨论】:

    标签: azure publish azure-webjobs


    【解决方案1】:

    Andy 回答的第三种选择是将 WebJobs 与您的网站一起部署,只需确保 WebJobs 脚本位于 app_data\jobs\{job type: continuous/triggered}\{job name} 下的正确位置。

    了解有关部署 WebJobs 的更多信息:http://blog.amitapple.com/post/74215124623/deploy-azure-webjobs/

    【讨论】:

    • 显然这也可以从 Visual Studio 配置:右键单击 web 项目 -> 添加 -> 现有项目为 Azure WebJob
    • Ohhad:我试过这个,但是当我下次尝试发布我的网络项目时,它卡在了“发布...”:/
    【解决方案2】:

    我也注意到了这一点,可以提供我想出的解决方案。

    如果您从 Visual Studio 发布,您可以取消选择文件发布选项“在目标位置删除其他文件”。当然,您现在不再删除服务器上未使用的文件,这可能并不理想。

    另一种选择是简单地为您的网络作业创建第二个网站。您可以将站点留空,您无需向其发布任何内容或配置任何超出网络作业的内容。这种方法的一个优点是您可以与原始网站分开监控(和潜在的规模)网络作业网站。

    【讨论】:

    • 目前,我使用的是第一个选项,该选项有效,但正如您所说,它不会删除其他文件。第二个选项很好,你提到了一个很好的观点,我们可以为我们的网络作业单独监控它。会调查的。 Tnx
    【解决方案3】:

    我找到的解决方案是排除发布到App_Data 文件夹。

    如果您使用 Visual Studio 2013 中的 Web 部署进行发布,您可以按如下方式启用此选项:

    1. 右键单击 web 项目。
    2. 点击发布...
    3. 点击设置
    4. 展开文件发布选项并选中从 App_Data 文件夹
    5. 关闭并保存更改。

    【讨论】:

    • 出于显而易见的原因,这也适用于 Team Services。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-28
    • 2022-07-22
    • 1970-01-01
    相关资源
    最近更新 更多