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 explicaremos 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.
Entendenda o funcionamento do Cron
Após acessar o cPanel, busque pela opção Tarefas Cron como demonstrado abaixo:
Na próxima página encontraremos tais opções:
Explicação rápida sobre o uso do Cron
Baseando-se na imagem acima temos os capos em sequencia mm, hh, dd, MM, ss e script
Onde:
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://seusite.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@seusite.com.br
Então a linha de comando ficará desse jeito:
1 |
curl -s -o /dev/null http: //seusite:teste@seusite.com.br/backup/backup.php |
Observação final! Recomendamos 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.