Fork me on GitHub
Você esta em:Home » Desenvolvimento » Como agendar tarefas PHP no Cron do Cpanel

Como agendar tarefas PHP no Cron do Cpanel

Como agendar tarefas PHP no Cron do Cpanel

Um tutorial muito útil para agendamento de execussão de tarefas de scripts PHP pela Cron do Cpanel ou Linux

Oque é Cron?

O cron é uma ferramenta de sistemas Linux e Unix que permite a execução de comandos ou programas, agendados para um determinado dia/mês/ano/hora. No exemplo abaixo explicarei como agendar a execussão de um arquivo php pela Cron do Cpanel. Com esse tutorial podemos agendar disparos de email, envios por webservice, limpeza de arquivos, execussão de rotinas de backups,…

Abaixo explicarei o agendamento de tarefas do Cpanel, mas caso você não possua o painel de controle Cpanel em sua conta de hospedagem existem outras opções sem que tenha que mexer diretamente no Linux. Como o:

PHP Task Scheduler – PHP Cron

Ele é vendido por 9 dólares no codecanyon.net, com ele vc terá um sistema de execussão de scripts agendados como o do Cpanel, que é mais fácil do que o do core do Linux caso você não tenha muita prática com o Linux

Entendenda o funcionamento do Cron

No cpanel, lá em baixo existe a opção Tarefas Cron como na imagem abaixo

Lá encontraremos a tela assim

Explicação rápido sobre o uso do Cron

Baseando-se na imagem acima temos os capos em sequencia mm, hh, dd, MM, ss e script

Onde:

  • mm = minuto(0-59)
  • hh = hora(0-23)
  • dd = dia(1-31)
  • MM = mes(1-12)
  • ss = dia_da_semana(0-6)
  • script = comando a ser executado.
  1. Obs: Em dia_da_Semana, 0 refere-se a domingo; e 6, ao sábado. No caso de dia da semana funciona também as três primeiras letras (em inglês) do dia da semana (SUN,MON,TUE,WED,THU,FRI,SAT)
  2. Obs: Em qualquer posição pode-se usar o * (asterisco) quando não se importar com o campo em questão.
  3. Obs: Pode-se utilizar intervalos nesses campos. O caracter para intervalo é o – (hifen).
  4. Obs: Pode-se utilizar lista de valores nesses campos. O caracter para a lista é a , (vírgula).
  5. Obs: Qualquer texto colocado após o programa que será executado será considerado comentário e não será interpretado pelo cron

Então ao colocar os campos como abaixo, significará que todo dia as 23h irá executar o script

Na linha de comando do script, não podemos simplesmente colocar o caminho do site http://www.deivison.com.br/backup/backup.php

Temos que colocar o curl – s -o /dev/null antes para simular a entrada de um browser no script.

E por último, como executar o cron numa pasta bloqueada pelo .htpasswd?

Para dar a permissão de entrada à uma pasta protegida por .htpasswd precisamos colocar antes do dominio o login e a senha do .thpasswd, separados por dois pontos(:) e do dominio o @. Assim:

usuario:senha@deivison.com.br

Então a linha de comando ficará desse jeito:


curl -s -o /dev/null http://deivison:teste@deivison.com.br/backup/backup.php

Observação final! Recomend colocar os arquivos que serão executados pela Cron abaixo da pasta public_html, assim temos a certeza de que não haverá nenhuma falha e deixaremos nosso script protegido do acesso via web.

Até mais!

Sobre o Autor

Designer, Web Developer & Linux Administrator

Meu nome é Deivison Arthur, tenho 29 anos, sou Administrador Linux, Analista de Sistema, Webdesigner e Pesquisador. há mais de dez anos. Nasci no Rio de Janeiro, atualmente trabalho como Gerente de Tecnologia e E-commerce at Grupo FFernandes e Freelancer nas horas vagas. Desenvolvimento em Joomla, Wordpress, Drupal, Magento e outros GPLs...

Quantidade de Artigos : 103

Comentários (9)

Enviar Comentário

© 2012 Feito com Wordpress, Desenvolvedor: Deivison Arthur Lemos Serpa

Ir para cima