Centos PHP-FPM Cron

我在我的Centos vps盒子上安装了nginx和php-fpm。 我需要添加一个cronjob来每10分钟执行一次脚本。 我尝试了crontab -e其中包含以下内容:

 */10 * * * * /path/to/script/script.php 

但是,它没有正确执行。 它说,在PHP代码中有错误,没有

尝试安装php-cli时出错

 --> Running transaction check ---> Package php-cli.i386 0:5.1.6-27.el5_5.3 set to be updated --> Processing Dependency: php-common = 5.1.6-27.el5_5.3 for package: php-cli --> Finished Dependency Resolution php-cli-5.1.6-27.el5_5.3.i386 from base has depsolving problems --> Missing Dependency: php-common = 5.1.6-27.el5_5.3 is needed by package php-cli-5.1.6-27.el5_5.3.i386 (base) Error: Missing Dependency: php-common = 5.1.6-27.el5_5.3 is needed by package php-cli-5.1.6-27.el5_5.3.i386 (base) 

php-fpm是只有fastcgi的。安装php-cli软件包也是

编辑

您必须启用回购安装

 yum -y --enablerepo=webtatic install php-cli 

没有看到错误很难知道,但我会说这是一个:

  • 脚本是可执行文件,但在开始时缺less#!/ usr / bin / php。
  • 脚本有#!/ usr / bin / php,但不能执行。
  • 该脚本是不可执行的,没有#!/ usr / bin / php所以crond不知道如何正确处理它。

如果你把你的cron改成:

 */10 * * * * /usr/bin/php /path/to/script/script.php 

它工作吗?

我有相同的configuration相同的问题。 不pipe什么原因,在几个月前安装php-fpm之后,我刚才注意到PHP不在path中。 php-cli脚本无法findphp,我找不到php,phpinfo()没有帮助,它在哪里? 实质上,安装“php-cli”把php放回path中。 我所有的网站运行良好,但我的php-cli脚本停止工作,因为PHP已经走了,直到昨晚我才注意到。

为我工作的解决scheme:

步骤1

yum install php-cli

================================================== ================================================== ==================软件包版本
存储库大小================================================ ================================================== ====================安装:php-cli x86_64
5.4.13-1.el6.remi remi 2.6 M更新依赖关系:php-common x86_64
5.4.13-1.el6.remi remi 891 k php-fpm x86_64 5.4.13-1.el6.remi remi 1.3 M php-mysql x86_64
5.4.13-1.el6.remi remi 134 k php-pdo x86_64 5.4.13-1.el6.remi remi 117 k

交易总结================================================ ================================================== ====================安装1套餐升级4套餐(s)

总下载大小:5.0 M这是好的[y / N]:y

希望这个升级不会破坏任何东西。

注意:我不得不添加“Remi”存储库来获取php-fpm。 我真的认为php-cli已经安装了,因为这个PHP脚本已经工作了好几个月。 脚本在我切换到php-fpm的时候停止了工作。

第2步

从脚本的第一行删除#!

php -l myscript.php

“在myscript.php中没有检测到语法错误”

活泉!

第3步

用“-f”参数更新我的crontab:

43 * * * * someuser php -f /home/getposts/myscript.php

作品!