Centos PHP-FPM Cron

4

Eu tenho o nginx e o php-fpm instalados na minha caixa do Centos vps. Eu preciso adicionar um cronjob para executar um script a cada 10 minutos. Eu tentei crontab -e com o seguinte:

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

No entanto, não está sendo executado corretamente. Ele diz que há erros no código php e não há

-

Erro ao tentar instalar o 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)
    
por Spencer 25.08.2011 / 21:48

3 respostas

1

php-fpm é somente fastcgi .. instale o pacote php-cli também

editar

Você precisa ativar o repo para instalar

yum -y --enablerepo=webtatic install php-cli
    
por 25.08.2011 / 23:51
1

Sem ver os erros, é difícil saber, mas eu diria que é um dos seguintes:

  • O script é executável, mas falta #! / usr / bin / php no começo.
  • O script tem #! / usr / bin / php mas não pode ser executado.
  • O script não é executável e não tem #! / usr / bin / php, por isso o crond não sabe como lidar com isso corretamente.

Se você alterar seu cron para:

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

Isso funciona?

    
por 25.08.2011 / 21:59
0

Eu tive o mesmo problema com a mesma configuração. Por alguma razão, depois de instalar o php-fpm meses atrás, percebi que o PHP não estava no caminho. O script php-cli não conseguiu encontrar o php, não consegui encontrar o php, o phpinfo () não ajudou, onde estava? Essencialmente, a instalação do "php-cli" colocou o php de volta no caminho. Todos os meus sites estavam funcionando bem, mas meu script php-cli parou de funcionar porque o php tinha ido embora, eu só não percebi até a noite passada.

A solução que funcionou para mim:

Etapa 1

yum install php-cli

====================================================================================================================== Package Arch Version
Repository Size ====================================================================================================================== Installing: php-cli x86_64
5.4.13-1.el6.remi remi 2.6 M Updating for dependencies: 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

Transaction Summary ====================================================================================================================== Install 1 Package(s) Upgrade 4 Package(s)

Total download size: 5.0 M Is this ok [y/N]: y

Espero que esta atualização não quebre nada.

Nota: Eu tive que adicionar o repositório "Remi" para obter o php-fpm. Eu realmente pensei que o php-cli já estava instalado porque este script PHP estava funcionando há meses. O script parou de funcionar quando eu mudei para o php-fpm.

Etapa 2

Removido #, o que quer que seja da primeira linha do script.

php -l myscript.php

"Nenhum erro de sintaxe detectado em myscript.php"

Woot!

Etapa 3

Atualizei meu crontab com o parâmetro "-f":

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

Funciona!

    
por 21.03.2013 / 18:38

Tags