🎉 USE O CUPOM DESCONTO.FULL | 20% OFF acima de R$ 50,00

Como corrigir Maximum Execution Time Exceeded no WordPress

Time Full Services Time Full Services
Tipo Erro do servidor
Nome do erro Maximum Execution Time Exceeded EN: Maximum execution time exceeded
Severidade Grave
Descrição O erro Maximum Execution Time Exceeded aparece quando um script PHP ultrapassa o número de segundos que o servidor permite por requisição (padrão 30s). O WordPress aborta a operação no meio, comum em importações, atualizações e backups longos.

O que é o erro Maximum Execution Time Exceeded?

O erro Maximum Execution Time Exceeded acontece porque o PHP tem a diretiva max_execution_time, que define quantos segundos um único script pode rodar antes de ser interrompido. O padrão da maioria das hospedagens é 30 segundos. Quando uma importação, atualização ou backup demora mais que isso, o PHP mata o processo e o WordPress mostra “Fatal error: Maximum execution time of 30 seconds exceeded”. É um limite de segurança contra scripts que travam o servidor, não um defeito do seu site.

Como identificar

  • A mensagem “Fatal error: Maximum execution time of 30 seconds exceeded” aparece em uma página em branco ou no log.
  • Importações de conteúdo (XML, demo de tema) ou backups param sempre por volta do mesmo tempo.
  • A atualização de um plugin ou tema grande falha no meio e deixa o site em modo de manutenção.
  • O erro cita um arquivo dentro de wp-content (ex.: wp-content/plugins/…/arquivo.php on line X) onde o script estourou o tempo.
Antes de começar: Faça backup do php.ini, do .htaccess e do wp-config.php antes de editar. Um erro de sintaxe nesses arquivos derruba o site, então altere uma diretiva por vez e teste. Não suba o tempo muito além do necessário: limites altos demais deixam scripts travados consumindo recursos.

Como prevenir

  • Mantenha o max_execution_time em pelo menos 120s em sites que fazem importações ou backups regulares
  • Use plugins de backup e migração que processam em lotes, em vez de uma única requisição longa
  • Otimize o banco de dados periodicamente para que consultas lentas não prendam scripts até o limite de tempo

Causa

  • max_execution_time do PHP baixo (30s) para tarefas longas como importação ou geração de miniaturas em lote.
  • Importação de demo de tema ou arquivo XML grande que leva mais de 30 segundos para concluir.
  • Plugin de backup ou migração processando muitos arquivos em uma única requisição.
  • Consulta lenta ao banco de dados (tabela inchada, sem índice) que prende o script além do limite.
  • Servidor compartilhado sobrecarregado, deixando cada requisição PHP mais lenta e estourando o teto de tempo.

Como resolver

  1. Confirme o limite atual: no wp-admin, vá em Ferramentas > Saúde do site > Informações > Servidor e veja "Tempo máximo de execução do PHP". Isso mostra de quantos segundos você está partindo.
  2. Aumente o limite no php.ini: via FTP, edite (ou crie) o php.ini na raiz do site e suba o valor para 300 segundos (5 minutos):
    max_execution_time = 300
  3. Se não tiver acesso ao php.ini, use o .htaccess: no servidor Apache, adicione a diretiva ao .htaccess da raiz para forçar o novo limite:
    php_value max_execution_time 300
  4. Como último recurso, ajuste pelo wp-config.php: alguns hosts respeitam o set_time_limit do PHP. Adicione a linha ao wp-config.php antes de /* That's all, stop editing! */:
    @set_time_limit( 300 );
  5. Quebre a tarefa se nada subir o limite: se a hospedagem trava o teto, divida o trabalho: importe o conteúdo em partes menores ou use um plugin de migração que processa em lotes em vez de uma requisição única.
INI
; php.ini — eleva o tempo maximo de execucao de um script PHP
; Padrao tipico de hospedagem = 30; 300 (5 min) cobre importacoes e backups longos
max_execution_time = 300

; Sobe junto o tempo de leitura do corpo da requisicao (uploads grandes)
max_input_time = 300

Perguntas frequentes

Qual valor de max_execution_time é seguro no WordPress?
300 segundos (5 minutos) atende a importações, backups e atualizações pesadas sem deixar scripts presos por tempo demais. Para tarefas comuns, 120s já basta. Evite valores muito altos, pois mantêm processos travados consumindo memória e CPU do servidor.
Aumentei o max_execution_time mas o erro continua. Por quê?
Muitos hosts impõem um teto no php.ini do servidor que ignora suas alterações. Tente o .htaccess; se ainda travar no mesmo tempo, o limite está bloqueado pela hospedagem e só o suporte pode liberar. Em PHP-FPM, o request_terminate_timeout também pode estar abaixo.
Qual a diferença entre max_execution_time e max_input_time?
O max_execution_time conta o tempo que o script roda processando dados; o max_input_time conta o tempo para o PHP receber e ler os dados enviados (como o upload de um arquivo). Importações grandes podem esbarrar nos dois, por isso convém subir ambos juntos.
O erro só aparece em importações. É problema do meu site?
Não necessariamente. Importar demos de tema ou arquivos XML grandes leva tempo, e 30 segundos costuma ser pouco. Não é um defeito: é o limite padrão sendo atingido. Subir o max_execution_time ou importar em partes menores resolve.
Posso usar set_time_limit(0) para remover o limite?
Tecnicamente sim, mas é arriscado: um script com bug pode rodar para sempre e travar o servidor. Prefira um valor finito alto, como 300. Muitos hosts em PHP-FPM também ignoram o set_time_limit por segurança.
Esse erro pode travar meu site inteiro?
Em geral ele só interrompe a tarefa que estourou o tempo (uma importação ou atualização). Mas se a atualização falhar no meio, o site pode ficar preso no modo de manutenção. Nesse caso, apague o arquivo .maintenance da raiz via FTP para voltar ao ar.

Seja PRO.

Tenha acesso a snippets de código premium — PHP, JavaScript, CSS e HTML prontos para usar em seus projetos.

Conhecer o plano Pro →

Uma nova era para o WordPress.

A FULL Services redefine o CMS com uma arquitetura modular que transforma o WordPress em um motor de crescimento digital. 

Painéis personalizados

Um novo nível de controle para o WordPress. Acompanhe métricas, automações e evolução do seu site em um único painel visual.

A força por trás de grandes marcas

Para agências, estúdios e profissionais independentes que desejam oferecer soluções de alto nível com sua própria marca.

Componentes

Hero Sections

30 componentes

Seções de CTA

14 componentes

Login

14 componentes

Blog

14 componentes

Cabeçalhos

24 componentes

Seções de FAQ

53 componentes

Cadastro

53 componentes

Blog individual

53 componentes

Rodapés

28 componentes

Seções de contato

27 componentes

Seções de preços

27 componentes

Faixas

27 componentes

Portfólio

16 componentes

Seções de equipe

12 componentes

Números

12 componentes

Logotipos

12 componentes