【问题标题】:Cron job in linux for running php filelinux中用于运行php文件的cron作业
【发布时间】:2018-11-18 05:52:14
【问题描述】:

我有一个 php 文件来创建一个新的文本文件。那必须每分钟运行一次。我将该文件存储在 /var/www/html/cron.php 上。我也在命令提示符下完成了

crontab -e

像这样编辑文件

* * * * * /var/www/html/cron.php

但 cron 仍然无法在 localhost 上运行

【问题讨论】:

  • 尝试将 cron 的输出重定向到文件以查看日志。对于 ex [ * * * * * /var/www/html/cron.php" >/var/log/cron.log 2>&1 ]
  • sudo service cron reload 是你这里最好的朋友。
  • 另外,如果您的脚本没有 php-shebang(代码的第一行是 #!/usr/bin/php)并且它不可执行,那么您需要将该行更改为* * * * * /usr/bin/php /var/www/html/cron.php

标签: php cron


【解决方案1】:

你在 crontab 中输入的命令应该是这样的:

*/10 * * * *   /usr/bin/php  /var/www/html/cron.php

其中/usr/bin/php 是您的php 二进制文件的示例路径。

您可以通过以下方式找到您的php binary

whereis php

【讨论】:

    【解决方案2】:

    您需要在 cron 中指定要执行的命令,即

    [cron time] [command to execute]
    

    /var/www/html/cron.php 不是一个命令只是一个文件,你需要使用类似的东西

    * * * * * php /var/www/html/cron.php 
    

    *最好使用php bin的完整路径而不是php

    【讨论】:

    • 最好使用php 的绝对路径(例如/usr/bin/php),因为cron 有时可能不知道该命令。
    • 完全同意!
    【解决方案3】:

    这应该可行:

    */1 * * * * cd /var/www/html;./cron.php
    

    【讨论】:

      猜你喜欢
      • 2012-06-19
      • 1970-01-01
      • 1970-01-01
      • 2011-11-12
      • 2012-01-14
      • 2012-04-23
      • 2012-04-28
      • 2012-08-18
      相关资源
      最近更新 更多