1

今天我了解了 cron 作业,我打开了 SSH 并按照 1and1 cron 作业教程进行操作,教程文件和说明运行良好,但是当我执行相同的步骤但使用我自己的 PHP 脚本时它不起作用,下面是 cron 作业命令我用了

* * * * * /usr/bin/php /path-to-webspace/heal.php

下面是heal.php文件,这个文件在没有cron的情况下可以正常工作,因为我事先对其进行了测试

<?php

include('onedirectorydown/database_connection.php');

$resetAllHealth = "UPDATE users SET Health = Health + 1000";
$executeAH = mysqli_query($dbc, $resetAllHealth);

?>

我希望它每分钟执行一次,因为我只是对其进行测试以查看它是否有效,但它没有,但是 1and1 教程中的示例有效,我基本上完全按照,我只是将文件内容放在 heal.php 中

有人能告诉我为什么它没有执行吗?

4

2 回答 2

1

CRON 作业的常见问题是所需的包含文件无法正常工作。例如:

include '/database.php';

/var/www/database.php从浏览器执行时可能会尝试包含,但在/home/username/database.php从相应用户的 CRON 作业执行时可能会尝试包含。

考虑用

include $_SERVER['DOCUMENT_ROOT'].'/database.php';

看看是否有帮助。

于 2013-01-28T19:03:11.767 回答
0

查看您的最后一条评论,也许您没有将正确的 mysqli 扩展安装到 cli 的 php.ini 文件中(通常在 /etc/php5/php.ini 下)。

请记住:“apache”脚本和“命令行”脚本有两个不同的 php.ini 文件。

于 2013-01-28T18:31:49.777 回答