2

我正在尝试通过 Jelastic 服务器上的 cron 作业运行 PHP 脚本。我的 cron/apache 文件看起来像这样。

*/1 * * * * /usr/bin/php /var/www/webroot/ROOT/php/cron.php

(最后一个 cronjob 条目后有一个空行)

但是,cron 作业不会调用该脚本。我已经阅读了 cron 作业的 Jelastic 文档(http://docs.jelastic.com/cron-job),但这并没有帮助我解决问题。

任何帮助,将不胜感激。

4

2 回答 2

0

正如您所说,该脚本可通过 HTTP 访问,您可以尝试使用此 cron 作业:

*/1 * * * * wget -q http://www.example.com/cron.php

这将在对 cron.php 文件的 GET 请求中执行并忽略输出。

于 2014-04-30T07:43:39.683 回答
0

您已经可以在 Layershift Jelastic PaaS 上获得 SSH 访问权限:http: //kb.layershift.com/jelastic-ssh-access

假设您使用的是不同的提供程序,您可能会尝试将 cron 输出写入日志文件,例如

*/1 * * * * /usr/bin/php /var/www/webroot/ROOT/php/cron.php >> /var/log/httpd/cron.log

和/或您可以尝试将输出邮寄给自己(但请注意邮寄警告;如果没有公共 IP,您的邮件将改为“源自”物理服务器的 IP,并且可能已定义或未定义有效的 PTR 记录或打开黑名单等 - 所以基本上你的垃圾邮件过滤器很有可能会拒绝电子邮件);只需将此行添加到您的 crontab 中:

MAILTO=you@youremail.com

于 2014-04-30T09:10:10.807 回答