1. Base de Conhecimento
  2. Hospedagem

Tarefas cron: como configurar no cPanel, DirectAdmin e Plesk

Nesta página

    Tarefas cron executam um script automaticamente em horários definidos, como rotinas de sistemas, filas de e-mail ou o agendador do WordPress. Você mesmo cadastra as tarefas no painel, sem intervenção da equipe.

    Onde cadastrar

    • cPanel: Trabalhos Cron (Cron Jobs).
    • DirectAdmin: Cronjobs.
    • Plesk: Tarefas agendadas (Scheduled Tasks), no domínio.

    Em todos eles você define minuto, hora, dia, mês e dia da semana, e o comando.

    Formato do comando

    Use o caminho completo do script e chame o PHP no início do comando.

    cPanel:

    php -q /home/usuario/public_html/pasta/script.php
    

    DirectAdmin:

    php -q /home/usuario/domains/seudominio.com.br/public_html/pasta/script.php
    

    Para guardar a saída e descobrir erros, envie o resultado para um arquivo de log (crie a pasta logs antes):

    php -q /home/usuario/public_html/pasta/script.php >> /home/usuario/logs/cron.log 2>&1
    

    O cron apenas executa o script. Se você espera receber um e-mail, o próprio script precisa enviar a mensagem.

    WordPress: troque o WP-Cron por um cron real

    O WP-Cron roda a cada visita e pode pesar ou falhar em sites com pouco acesso. Para usar um cron real:

    1. No wp-config.php, acrescente:
    define('DISABLE_WP_CRON', true);
    
    1. Cadastre a tarefa no painel:
    cd /home/usuario/public_html && php -q wp-cron.php >/dev/null 2>&1
    

    Use um intervalo moderado, como a cada 5 ou 15 minutos.

    Revenda: o cron não executa em nenhuma conta

    Nas contas criadas pela revenda, a opção jailshell (shell enjaulado) bloqueia o shell da conta e, com isso, as tarefas cron e o terminal. Erros como couldn't exec /usr/bin/jailshell indicam esse caso.

    • WHM: desative o jailshell no pacote usado pelas contas ou em uma conta específica, em Listar contas, na opção de modificar a conta.
    • DirectAdmin (revendedor): em Pacotes de hospedagem (Meus Pacotes), desative o jailshell no pacote usado pelas contas.

    Erros comuns

    • No input file specified: o caminho do arquivo está errado. Confira a pasta no Gerenciador de Arquivos.
    • Funciona pelo navegador e não pelo cron: a versão do PHP do cron pode ser diferente da do site. Informe no ticket o comando usado.
    • Tarefa com intervalo de 1 minuto: prefira intervalos maiores e confirme com o suporte se o sistema exige execução muito frequente.

    Se não resolver

    Abra um ticket com:

    • o domínio e a conta onde a tarefa está cadastrada;
    • o comando exato e o horário configurado;
    • o conteúdo do log da tarefa, se houver.

    Não inclua senhas no ticket.

    Esta resposta foi útil?

    A sua avaliação nos ajuda a melhorar os artigos.

    Não resolveu? Abra um ticket

    Conte o que aconteceu e a nossa equipe ajuda você, 24 horas por dia.

    Carregando