Saltar para o conteúdo
BeoHosting
BeoHosting

8 min

Como Configurar um Cron Job

Cron Jobs do cPanel, sintaxe do crontab, wp-cron e automação PHP.

Equipa BeoHosting

10+ anos de experiência — Especialistas em alojamento web e infraestrutura

Última atualização:

Os cron jobs executam scripts de forma agendada — a cada minuto, de hora a hora, diariamente ou em dias específicos. Alimentam backups, filas de email, artigos agendados do WordPress, limpeza de cache e inúmeras outras tarefas de automação. Este guia mostra como adicionar um cron job no cPanel, como funciona a sintaxe do crontab (* * * * *) e como substituir o pouco fiável wp-cron do WordPress por um verdadeiro cron de servidor.

Como Configurar um Cron Job

1

Abrir os Cron Jobs no cPanel

cPanel → Advanced → Cron Jobs. Vê os crons existentes e um formulário para adicionar novos. Os alojamentos cPanel (incluindo a BeoHosting) permitem crons ilimitados na maioria dos planos.

2

Compreender a sintaxe do cron

Cinco campos: minuto (0-59), hora (0-23), dia do mês (1-31), mês (1-12), dia da semana (0-6, Dom=0). O * significa "cada". Exemplos: "0 * * * *" = a cada hora, ao minuto 0. "*/5 * * * *" = a cada 5 minutos.

3

Adicionar um cron através dos atalhos do cPanel

Use o menu pendente "Common Settings" — "Once per hour", "Once per day" preenchem a sintaxe automaticamente. Depois escreva o comando, por exemplo /usr/local/bin/php /home/user/public_html/script.php.

4

Substituir o WP-Cron por um cron verdadeiro

O wp-cron predefinido do WordPress corre a cada visita de página — pouco fiável. Desative-o: adicione define('DISABLE_WP_CRON', true); ao wp-config.php. Depois adicione o cron: */5 * * * * curl -s https://oseudominio.com/wp-cron.php?doing_wp_cron > /dev/null.

5

Tarefas de cron comuns

Backups: 0 3 * * * /path/backup.sh. Enviar emails pendentes: */10 * * * * /usr/local/bin/php /path/send-mail.php. Limpar cache: 0 4 * * * /path/clear-cache.sh. Sincronizar feed de produtos: 0 */6 * * * /path/sync-feed.php.

6

Notificações por email e depuração

Os Cron Jobs do cPanel têm um campo Email — defina-o para receber o resultado. Para suprimir os emails em caso de sucesso: adicione > /dev/null 2>&1. Para registar num ficheiro: > /home/user/cron.log 2>&1.

Pronto para lançar o seu site?

Proteção SSL
Velocidade
Apoio 24/7

Junte-se a mais de 4.000 clientes satisfeitos. Migração gratuita e garantia de reembolso de 15 dias.

Garantia de reembolso de 15 dias
Migração gratuitaGarantia de 15 diasApoio 24/7

FAQ

Respostas às perguntas mais comuns sobre os nossos serviços.

Mínimo de 1 minuto na BeoHosting. Alguns alojamentos partilhados limitam a um mínimo de 5 ou 15 minutos. Para tarefas de alta frequência, considere um worker/fila em vez de um cron.

Verifique se o caminho do comando é absoluto (/usr/local/bin/php, não apenas php). Verifique as permissões do ficheiro (chmod +x para scripts shell). Verifique o resultado do email ou /var/log/cron. Adicione 2>&1 > /tmp/cron.log para capturar erros.

O cron de servidor é mais fiável, mais rápido e tem menos sobrecarga. O WP-Cron só corre quando alguém visita o site — mau para sites com pouco tráfego. Desative sempre o WP-Cron e use um cron verdadeiro em produção.

Em alojamento partilhado, não — os crons correm como o seu utilizador do cPanel. Em VPS/dedicado, edite /etc/crontab ou use sudo crontab -u username -e.

Adicione a linha define('DISABLE_WP_CRON', true); ao seu ficheiro wp-config.php (antes da linha "That's all, stop editing!"). Depois crie um Cron Job no cPanel com o comando: /usr/local/bin/php /home/username/public_html/wp-cron.php e configure-o para "Once Per Fifteen Minutes". Isto é mais fiável, porque o cron do WordPress, por predefinição, depende das visitas ao site — se não houver visitantes, as tarefas agendadas não correm.

As nossas garantias para a sua tranquilidade

Protegido em todas as frentes

Garantia de 15 dias

Reembolsamos sem perguntas nos primeiros 15 dias.

Migração gratuita

Migramos o seu site sem qualquer interrupção — não tem de fazer nada.

Suporte 24/7

Os nossos especialistas estão disponíveis 24/7 através de tickets e chat em direto.