Ativar o WP-Cron com um cronjob num site WordPress com ISPConfig

Procédure

O que é o WP-Cron?

O WP-Cron é o mecanismo interno do WordPress que imita o serviço cron do Linux para executar tarefas agendadas em segundo plano no WordPress. Entre outras coisas, isto permite a realização de actualizações automáticas, aquecimento da cache e tarefas de manutenção do WooCommerce. Uma vez que os plugins têm acesso a este mecanismo, podem adicionar tarefas a serem executadas para agendar acções adicionais. Pode saber mais na nossa publicação de blogue dedicada: O que é o WordPress CRON?

Porquê ativar o WP-Cron com um cronjob?

O WP-Cron foi originalmente concebido para substituir o cronjob em pacotes de alojamento web que não permitem adicionar um script ao serviço cron do Linux. Consequentemente, o WP-Cron desencadeia a execução de tarefas graças aos pedidos feitos ao ficheiro wp-cron.php, durante os pedidos AJAX feitos a wp-admin/admin-ajax.php, e/ou quando a página é carregada. Assim, o gatilho para estes pedidos HTTP é inevitavelmente a visita ao sítio Web. Como resultado, o carregamento da página será sobrecarregado pela execução de tarefas WP-Cron e o desempenho pode ser reduzido. Pior ainda, alguns plugins adicionam tarefas demasiado longas no Wp-Cron, ao ponto de excederem os tempos de espera HTTP possíveis. E, o que é mais preocupante, a execução das tarefas pode ser atrasada pelo facto de não haver visitantes no sítio no momento em que a tarefa deveria ter sido executada. Por conseguinte, algumas tarefas podem acumular-se e, quando um visitante abre a página, dezenas ou mesmo centenas de tarefas programadas podem ser abandonadas, penalizando grandemente o tempo de carregamento para esse infeliz visitante.

Assim, ativar o WP-Cron com um cron job garante que as tarefas agendadas com o WP-Cron são executadas sem afetar os visitantes: o wp-cron.php será executado em intervalos regulares, quer haja ou não visitantes, e os visitantes podem abrir imediatamente o site sem esperar que as tarefas pendentes sejam executadas.

Passo 1: Desativar a execução do WP-Cron quando uma página é carregada

Em primeiro lugar, é necessário desativar a execução do WP-Cron quando uma página é carregada. Isto é feito adicionando a seguinte linha ao seu ficheiro wp-config.php:

define( 'DISABLE_WP_CRON', true );

Para o fazer, vá ao seu cliente FTP, ligue-se à sua conta FTP e edite o ficheiro wp-config.php:

Ativar o WP-Cron com um cronjob num site WordPress com ISPConfig

Passo 2: Ativar o wp-cron.php a partir de um trabalho cron

No seu painel de controlo ISPConfig, vá a Sites > Trabalhos cron e clique em"Novo cron":

Ativar o WP-Cron com um cronjob num site WordPress com ISPConfig

Em seguida, introduza um cronjob que seja executado a cada minuto e execute o ficheiro wp-cron.php:

Ativar o WP-Cron com um cronjob num site WordPress com ISPConfig

O comando a executar,"php7.4 [web_root]/wp-cron.php" pode ser ajustado:

  • php7.4 indica o binário PHP a ser utilizado. Se o seu sítio Web utilizar outra versão, certifique-se de que ajusta a versão indicada.
  • [web_root] representa a pasta "web" no seu FTP. Também deve ajustar este valor se o seu sítio WordPress estiver localizado num diretório específico.

A caixa de verificação "Log output" permite-lhe registar a saída do wp-cron na pasta "private" da sua conta FTP. Pode seleccioná-la se pretender ter a saída stdout e stderr do wp-cron.php, útil para depuração, por exemplo.

Pode saber mais sobre astarefas agendadas do cron no seu VPS no artigo dedicado.

Algumas armadilhas a evitar

Por defeito, os sítios criados no ISPConfig não estão associados a nenhuma conta de cliente:

Ativar o WP-Cron com um cronjob num site WordPress com ISPConfig

No entanto, se associou voluntariamente o seu sítio Web a uma conta de cliente ou de revendedor criada no ISPConfig, esta conta pode ter determinados limites cron que podem impedir que a tarefa cron funcione corretamente. Para verificar estes limites, aceda ao separador Limites da conta de cliente/revendedor:

Ativar o WP-Cron com um cronjob num site WordPress com ISPConfig

Certifique-se de que escolheu Full cron para que o cronjob não seja executado em um chroot de jail limitado que não tenha todas as funções necessárias para que o cronjob funcione corretamente:

Ativar o WP-Cron com um cronjob num site WordPress com ISPConfig

Certifique-se também de que define o tempo mínimo entre execuções como "1" para que o cronjob possa ser executado a cada minuto.

Se já criou cronjobs e/ou utilizadores da shell para o sítio, será necessário apagar todos os cronjobs e utilizadores da shell existentes, e depois recriá-los, para que o ISPConfig os possa mudar de um ambiente chroot para um ambiente cron completo.

Avaliar este artigo :

5/5 | 2 opinião

Este artigo foi útil para si ?

Article utileSim

Article non utileNão

Vous souhaitez nous laisser un commentaire concernant cet article ?

Si cela concerne une erreur dans la documentation ou un manque d'informations, n'hésitez pas à nous en faire part depuis le formulaire.

Pour toute question non liée à cette documentation ou problème technique sur l'un de vos services, contactez le support commercial ou le support technique

MerciMerci ! N'hésitez pas à poser des questions sur nos documentations si vous souhaitez plus d'informations et nous aider à les améliorer.


Vous avez noté 0 étoile(s)

Artigos semelhantes

0mn leitura

Como desativar o mod_security em um site no seu VPS usando o painel ISPConfig?

1mn leitura

Limites de largura de banda em servidores VPS

2mn leitura

Como configurar a autenticação de dois factores no ISPConfig


Fazer uma pergunta à equipa do LWS e à sua comunidade