Como Diagnosticar o Erro "Out of Memory" no PHP
Olá, amigo(a) GeHost! 😊
Se você está vendo uma mensagem como "Fatal error: Allowed memory size of X bytes exhausted" ao acessar seu site ou sistema, não se preocupe — isso é um erro comum, mas totalmente solucionável. Vamos juntos entender o que está acontecendo e como consertar isso, passo a passo, com calma e clareza.
O que significa "Out of Memory" no PHP?
Quando o PHP diz que "estourou a memória", significa que seu script tentou usar mais memória do que o permitido pelo servidor. Isso pode acontecer com sites grandes, plugins mal otimizados, ou processos que rodam por muito tempo (como importação de dados).
Dica do Sensei: É como tentar encher um balde com água, mas o balde é pequeno demais. O sistema para e diz: "Não dá, amigo!"
Passo a Passo para Diagnosticar o Erro
-
Verifique o erro no log
O primeiro passo é saber exatamente onde o erro está acontecendo. Acesse o Gerenciador de Arquivos no cPanel:
Navegue até a pasta do seu site (geralmente
public_html) e procure por arquivos comoerror_logouphp_error.log. Abra um desses arquivos com o editor do cPanel. -
Localize a mensagem de erro
Procure por linhas que digam algo como:
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 4096 bytes)Isso mostra exatamente quanto de memória estava disponível (128 MB nesse caso) e o que o script tentou fazer.
-
Entenda o que está consumindo memória
Erros de memória costumam aparecer em:
- Plugins ou temas muito pesados (especialmente em WordPress).
- Scripts de importação/exportação de dados.
- Sites com muitas requisições simultâneas.
- Aplicações mal otimizadas ou com loops infinitos.
Se você não sabe qual parte está causando, comece desativando plugins ou módulos um por um.
-
Verifique o limite atual de memória PHP
Para saber qual é o limite atual, crie um arquivo temporário chamado
info.phpna pasta do seu site com este conteúdo:<?php phpinfo(); ?>Salve, acesse o arquivo pelo navegador (ex:
seusite.com/info.php) e procure por "memory_limit". Ele mostrará o valor atual (ex: 128M). -
Como aumentar a memória PHP (solução prática)
Se o erro for por falta de memória, você pode aumentar o limite. Existem duas formas:
- Usando um arquivo .htaccess: No
public_html, crie ou edite o arquivo.htaccesse adicione esta linha:php_value memory_limit 256MImportante: Isso só funciona se o servidor permitir. Em alguns casos, o PHP está em modo "safe mode", mas na GeHost, geralmente é permitido.
- Usando um arquivo php.ini: Se o seu site tem um arquivo
php.inina raiz, edite-o e coloque:memory_limit = 256MSe não tiver esse arquivo, você pode criar um com esse conteúdo.
- Usando um arquivo .htaccess: No
-
Teste novamente
Depois de ajustar, limpe o cache do navegador e tente acessar a página que estava dando erro. Se o problema persistir, tente aumentar para
512Mou mais, dependendo do uso.
Dicas do Sensei para Prevenir Erros Futuros
- Não aumente demais: Colocar 1GB de memória pode parecer solução, mas pode sobrecarregar o servidor. Comece com 256M e suba conforme necessário.
- Atualize seu sistema: Plugins e temas antigos são grandes causadores de erros. Mantenha tudo atualizado.
- Use ferramentas de monitoramento: Ferramentas como o Metrics no cPanel (em
Metrics) ajudam a ver o uso de recursos do seu site. - Entre em contato conosco: Se o erro persistir mesmo com ajustes, envie o log para o suporte da GeHost — estamos aqui para te ajudar! 🤝
Se você seguir esses passos com calma, vai resolver esse problema com tranquilidade. Lembre-se: todo erro é uma oportunidade de aprender. 💪
Até a próxima, com amor e código limpo! 🌟