0

これが私のcronジョブです

PATH=/package/host/localhost/php-5.4.7-1/bin:/bin:/usr/bin
PHPRC=/home/stuff/etc
* * * * * php /home/stuff/private/xFEklnTekl/cmd.php

これはcmd.phpファイルです

<?php
$c = file("c.txt");
$f = fopen("c.txt", "w+");
$g = $c[0]+1;
fwrite($f, $g);
fclose($f);
?>

悲しいことに、c.txt ファイルが適切に更新されません。PHPスクリプトで指定されたパスに何か問題があると思います。すでに /c.txt だけを試しましたが、うまくいきませんでした。それで、何が間違っているのでしょうか?

4

1 に答える 1

1

crontab には、cronjobs 以外のものを含めないでください。これを使用してみてください:

* * * * * /bin/php /home/stuff/private/xFEklnTekl/cmd.php

+x 実行権限があること、および crontab ユーザーがディレクトリにアクセスできることを確認してください。

また、フルパスを入れてください

$c = file("c.txt");
$f = fopen("c.txt", "w+");

$c = file("/home/stuff/private/xFEklnTekl/c.txt");
$f = fopen("/home/stuff/private/xFEklnTekl/c.txt", "w+");

編集 コメントに見られるように、代わりに/bin/phpから来るものを使用する必要がありますwhich php。あなたの場合、

* * * * * /package/host/localhost/php-5.4.4/bin/php  /home/stuff/private/xFEklnTekl/cmd.php
于 2013-02-10T23:59:31.363 に答える