2

我使用 Sugar CRM,它有 cron.php

我敢肯定,很久以前在旧门户网站上,当“网络作业预览”在网站仪表板上可见时,我创建了一个名为 cron.php 的网络作业,一切似乎都运行良好。我不记得我是通过它的 URL 直接调用 cron.php(不太可能,因为它包含禁止这样做的代码),或者我是否有其他方法让命令行 php 处理器处理脚本(更有可能,但无法获得有关网络作业的足够详细信息以供检查)

大约在去年 8 月,它停止了,不知道为什么,但现在似乎无法重新设置它,或者 azure 现在如何支持预定的作业

在新门户中,我可以上传一个包含 bat 文件的 ZIP 文件,其中包含我需要的命令:基本上是

CD d:\home\site\wwwroot 
php -f cron.php

cron.php 的代码检查它是否从命令行环境启动。我认为这与从 URL 启动不同,因为如前所述,前往 mysite.com/cron.php 似乎不起作用,它只是响应重定向到站点的主页并且不写入任何 cron 日志条目. 从命令行启动时,例如 KUDU 控制台或 webjob bat-file-in-a-zip-file 方法,它按预期工作

太好了,所以我已经上传了 zip 文件,使它成为新的 azure 门户中的新按需作业,现在我正在寻找一种每 10 分钟调用一次该作业的方法

我读了这个博客:https ://azure.microsoft.com/en-gb/documentation/articles/web-sites-create-web-jobs/但它可能已经过时了,因为它似乎暗示有一种上传 zip 的方法基于网络作业和旧门户中的文件,现在我只能找到每 X 分钟调用一次 URL 的方法。它似乎还指代旧门户中不再存在的页面选项和链接:

创建计划的网络作业

1) ...在旧门户中,转到 WebJob 页面并单击添加。

我不确定“网络作业页面”是什么意思;我能找到与 webjobs 相关的唯一方法是进入 Azure Scheduler,然后进入 webjob 集合。

我认为曾几何时,可以通过点击进入网站时看到的链接行访问“网络作业页面”(仪表板、监视器、规模、配置......”

此外,虽然我可以找到方法进入新门户中基于 zip 的网络作业的 SCM 页面,但我找不到从 URL 调用作业的方法,否则我会将该 URL 插入调度程序旧门户

关于从这里去哪里的任何建议?新门户似乎不支持调度,但提供了一种上传正确调用和运行 cron.php 的脚本的方法,旧门户似乎不支持上传正确调用 cron.php 的脚本的任何方式,但它确实提供了对调度的支持。 .

要么我有点笨,遗漏了一些非常明显的东西,要么 Azure 团队在最近的某个时候为全世界打破了一个相当重要的场景配对(上传脚本,按计划调用),就像这样 - 我会有虽然这会引起轩然大波,所以希望前者是真的

4

2 回答 2

1

您可以使用 SCM 站点 api 列出所有“触发的”网络作业:

https://<sitename>.scm.azurewebsites.net/api/triggeredwebjobs

您可以使用以下方法调用作业:

https://<sitename>.scm.azurewebsites.net/api/triggeredwebjobs/{job name}/run

至于无法在旧门户中看到 webjobs,这听起来很奇怪,我们仍然在包含触发和连续 webjobs 的 webjobs 的网站上看到它。

于 2015-06-03T14:01:16.937 回答
1

我同意 Miracledev,因为我可以在旧门户上看到 WebJobs 选项卡,它允许我上传和安排 zip 作业。 在此处输入图像描述 请确保您已选择 Web 应用程序,“Webjobs”是https://azure.microsoft.com/en-gb/documentation/articles/app-service-web-overview/上描述的 Web 应用程序概念之一。如果我们对您的原始问题有任何误解,请随时告诉我们。

于 2015-06-03T16:30:08.337 回答