2014-06-05 186 views
0

我知道这个问题被问了很多次,但大多数答案并不真正有用。Cronjob不起作用

所以我编辑了crontab和crontab -e。它是空的,我只添加了一行

*/1 * * * * php5 /var/www/cron.php我认为它将每1分钟执行一次cron.php。我保存的文件,但它显然不执行(我的PHP文件中我只有

<? 
$file = 'test.txt'; 
file_put_contents($file, "Work"); 

并且它不创建。我看了一下,安装为Apache模块修改于cron.php权限为777腓。

让我困扰的是,当我做php5 /var/www/cron.php命令行,我只看到文件的内容,并没有执行。

我在做什么错?

我也使用全试过路径与*/1 * * * * /usr/bin/php5 /var/www/cron.php但一个也没有运气。

+0

尽量提供完整路径,而不是仅仅是文件名。 – alfasin

+0

给将要关闭它的人。这不是一个错误。一个人不知道配置文件与CLI和Apache模块运行的Apache不同。 –

回答

4

脚本的第一行应该是:

<?php 

您可能必须在Apache配置PHP启用短标记,而不是CLI PHP配置。

+0

你是对的,但我不认为这是他可以手动运行它的问题。我相信该文件正在创建 - 只在他期望的文件夹中没有... – alfasin

+1

他说他不能手动运行它。当他试图手动运行它时,会输出脚本源代码,但它不会运行它。 – Barmar

+0

你是绝对正确的。谢谢。我不知道CLI和Apache有不同的配置。谢谢。 –

0
  • 尝试使用PHP的完整路径(例如,/ usr/local/bin目录/ PHP)
  • 尝试使用<?php代替<?