
🔧 Como corrigir o erro de carregamento de imagens no WordPress
Um erro de carregamento de imagem no WordPress surge no pior momento possível. Está a preparar um artigo, a selecionar uma imagem, a clicar em «Carregar» e o WordPress mostra silenciosamente «HTTP Error» ou recusa-se a guardar o ficheiro sem explicação. Se acontecesse apenas uma vez, seria aceitável, mas para alguns administradores as falhas de carregamento repetem-se de forma consistente a cada poucos dias.
A causa raramente é óbvia. O culpado pode ser qualquer coisa: permissões que se corromperam após uma migração, um conflito com um plugin de segurança, um limite de memória restrito num alojamento partilhado barato ou o ModSecurity a tratar a sua imagem como um ataque. A boa notícia: quase todas as causas podem ser corrigidas sem um programador e sem ligar para o suporte de alojamento.
Neste guia encontrará a cadeia completa de diagnóstico e correção para erros de carregamento de imagem. Do simples (mudar de navegador, renomear ficheiros) ao nível do servidor (editar php.ini, .htaccess e wp-config.php). Siga-a e resolva; a maioria dos casos fica resolvida em 5 a 10 minutos.
💡 Visão geral rápida:
- Verifique as permissões na pasta
/wp-content/uploads/via FTP ou Gestor de Ficheiros do cPanel: 744 para pastas e 644 para ficheiros. - Para erros HTTP, siga a cadeia: limpar a cache do navegador → renomear o ficheiro → comprimi-lo → desativar plugins → aumentar a memória PHP → alterar a versão do PHP.
- Para erros de «Missing a temporary folder» e problemas de limite de tamanho de ficheiro, um par de linhas no
wp-config.phpe no.htaccessajudará. - Os utilizadores da GoDaddy e da DreamHost encontrarão soluções específicas no final.
Por que razão ocorrem os erros de carregamento de imagem
O WordPress armazena todos os ficheiros multimédia em /wp-content/uploads/. Para escrever uma imagem nessa pasta, o processo PHP precisa de permissões de escrita. Se as permissões estiverem corrompidas (isto acontece durante atualizações do servidor, migrações, mudanças de alojamento ou até após correções automáticas do PHP), os carregamentos falham silenciosamente.

O segundo grupo de causas envolve a configuração do PHP: limite de memória, parâmetros upload_max_filesize e post_max_size, e o caminho da pasta temporária. Se algum destes parâmetros for insuficiente, o WordPress não aceitará o ficheiro. Em planos de alojamento partilhado baratos, os fornecedores cortam frequentemente os buffers de forma mais agressiva do que o mostrado no phpinfo(), e vê «HTTP Error» sem qualquer pista da causa real.

Finalmente, existem conflitos. Um plugin de segurança interceta o pedido POST, um tema substitui o tratamento de multimédia ou o ModSecurity ao nível do servidor web considera o carregamento uma ameaça. O diagnóstico é abordado na próxima secção.
1. Verificar as permissões na pasta de uploads
A causa mais comum são permissões incorretas em /wp-content/uploads/. O WordPress não consegue escrever na pasta e recusa silenciosamente o carregamento. A solução: definir o CHMOD correto via FTP.
Ligue-se ao seu site através de um cliente FTP como o FileZilla. Navegue até /wp-content/, encontre a pasta uploads, clique com o botão direito e selecione «Permissões do ficheiro»:

Na janela que se abre, introduza 744 no campo de valor numérico. Marque «Aplicar a subdiretórios recursivamente» e «Aplicar apenas a diretórios». Clique em OK.

Se 744 não resolver o problema, experimente 755: o proprietário obtém permissões de leitura, escrita e execução, enquanto o grupo e outros obtêm leitura e execução.
Agora defina as permissões para os ficheiros dentro de uploads. Clique novamente com o botão direito na pasta uploads → «Permissões do ficheiro». Introduza 644, marque «Aplicar a subdiretórios recursivamente» e «Aplicar apenas a ficheiros». Clique em OK.

Tente carregar uma imagem novamente. Na maioria dos casos, o erro desaparece imediatamente após este procedimento. Se não ajudar, prossiga para o próximo passo.
2. Seguir a cadeia de solução do erro HTTP
Os erros HTTP durante o carregamento são os mais frustrantes porque o WordPress não deixa rastos nos registos. Apenas «HTTP Error» e mais nada. Tem de percorrer as possíveis correções por eliminação. Abaixo está uma cadeia do simples ao complexo: percorra-a por ordem até que os carregamentos comecem a funcionar.
2.1. Atualizar a página ou mudar de navegador
Parece óbvio, mas funciona mais vezes do que imagina. Por vezes, a sessão do WordPress expira e, após iniciar sessão novamente, o erro desaparece. Atualize a página com uma reinicialização forçada da cache: Ctrl+F5 no Windows, Cmd+Shift+R no Mac. Se isso não ajudar, abra o site num navegador diferente. Se houver um erro no Chrome, mas não no Firefox, o problema está nas extensões ou na cache específica desse navegador.
2.2. Limpar a cache do navegador
A cache armazena scripts e estilos desatualizados que podem entrar em conflito com o carregador de multimédia do WordPress. Atalhos de teclado para uma reinicialização completa:

- Windows (Chrome, Firefox, Edge):
Ctrl + Shift + Delete→ «Limpar dados de navegação» - Mac (Chrome, Firefox):
Cmd + Shift + Delete - Safari:
Shift + click the reload button
Em alternativa, vá às definições do navegador e elimine a cache manualmente. O caminho varia consoante o navegador, mas encontra-se sempre na secção «Histórico» ou «Privacidade».
2.3. Renomear o ficheiro de imagem
O WordPress adiciona automaticamente números a nomes duplicados (image-1.png, image-2.png), mas por vezes este mecanismo falha. Renomeie o ficheiro antes de o carregar: evite caracteres especiais, espaços e caracteres não ASCII no nome. Um bom formato: product-banner-01.jpg.
2.4. Comprimir a imagem
O tamanho do ficheiro pode estar a atingir o limite do alojamento. Mesmo que o upload_max_filesize esteja definido com um valor generoso, alguns servidores cortam os buffers em valores mais baixos. Comprima a imagem: para JPEG, utilize o Imagify ou o TinyPNG; para PNG, utilize o Squoosh.

Verifique também o formato: se estiver a carregar .png, experimente converter para .jpg e vice-versa. Por vezes, o problema está associado a um formato específico e à versão da biblioteca PHP (GD ou Imagick).
2.5. Desativar plugins e mudar de tema
Os plugins de segurança (Wordfence, Solid Security, Sucuri) e os plugins de otimização de imagem podem intercetar os carregamentos e causar conflitos. Desative temporariamente TODOS os plugins e mude para um tema padrão (Twenty Twenty-Five ou qualquer outro tema padrão). Teste o carregamento. Se funcionar, ative os plugins um a um para encontrar o culpado.
2.6. Aumentar o limite de memória do PHP
O processo de processamento de imagem do PHP consome memória. Uma captura de ecrã Full HD em formato JPEG pode não ter memória suficiente nem com 64 MB. Adicione o seguinte ao wp-config.php antes da linha /* That's all, stop editing! */:
1 define( 'WP_MEMORY_LIMIT', '256M' );
2.7. Atualizar a versão do PHP
A partir de 2026, o WordPress recomenda o PHP 8.3 como versão mínima, sendo o PHP 8.4 ou 8.5 as versões ideais. Nas versões 7.4 e inferiores, a funcionalidade do carregador de media não é garantida. O caminho no cPanel: secção «Software» → «Select PHP Version» → mudar para 8.4 ou 8.5.

2.8. Desativar o ModSecurity
O ModSecurity é uma firewall ao nível do servidor web que, por vezes, trata os carregamentos de imagem como ataques. Adicione o seguinte ao .htaccess (na raiz do site):
1 <IfModule mod_security.c> 2 SecFilterEngine Off 3 SecFilterScanPOST Off 4 </IfModule>
Se isto não ajudar, remova estas linhas: o problema não é o ModSecurity.
2.9. Mudar o WordPress de Imagick para a biblioteca GD
O WordPress utiliza o Imagick (se o módulo estiver instalado no servidor) ou a biblioteca GD para o processamento de imagem. O Imagick oferece maior qualidade, mas consome mais memória. Se o WP_MEMORY_LIMIT não ajudou, force o WordPress a utilizar a GD. Adicione o seguinte ao functions.php do seu tema ativo:
1 function wpb_image_editor_default_to_gd( $editors ) { 2 $gd_editor = 'WP_Image_Editor_GD'; 3 $editors = array_diff( $editors, array( $gd_editor ) ); 4 array_unshift( $editors, $gd_editor ); 5 return $editors; 6 } 7 add_filter( 'wp_image_editors', 'wpb_image_editor_default_to_gd' );
Depois disto, o WordPress coloca a GD Library em primeiro lugar na cadeia e utiliza o Imagick como alternativa.
2.10. Instalar o Add From Server como método alternativo de carregamento
Se o erro HTTP persistir e precisar de carregar um ficheiro com urgência, carregue-o para o servidor via FTP para qualquer pasta e importe-o para a biblioteca de multimédia utilizando o Add From Server. O plugin obtém os ficheiros diretamente do sistema de ficheiros, contornando o carregador padrão do WordPress. Funciona com ficheiros de qualquer tamanho, limitado apenas pelo espaço em disco do seu plano.
2.11. Contactar o seu fornecedor de alojamento
Se já tentou tudo, escreva ao suporte de alojamento. Descreva o erro, anexe uma captura de ecrã e indique as suas versões de PHP e WordPress. Muitas vezes, o problema é resolvido do lado do servidor: o suporte pode editar o php.ini, remover um bloqueio do ModSecurity ou reiniciar o PHP-FPM.
3. Corrigir o erro «Missing a temporary folder»
O erro «Missing a temporary folder» bloqueia não só o carregamento de imagens, mas também a instalação de plugins e as atualizações do WordPress. A causa: o PHP não consegue encontrar ou escrever no diretório temporário.
A solução é indicar explicitamente ao WordPress o caminho para a pasta temporária. Abra o wp-config.php e adicione antes da linha final:
1 define( 'WP_TEMP_DIR', dirname( __FILE__ ) . '/wp-content/temp/' );
Guarde o ficheiro. Depois, via FTP ou Gestor de Ficheiros do cPanel, crie uma pasta temp dentro de /wp-content/ (se não existir). Defina as permissões da pasta como 755. Volte ao painel de administração e tente carregar novamente.
4. Aumentar o limite de tamanho de carregamento de ficheiros
O erro «Uploaded file exceeds the upload_max_filesize directive» significa que o ficheiro é demasiado grande para as definições atuais do PHP. Três formas de o corrigir, da mais simples à de nível de servidor.
4.1. Via.htaccess
Adicione o seguinte ao .htaccess (raiz do site):
1 php_value upload_max_filesize 256M
Se o erro se repetir, adicione as seguintes linhas:
1 php_value post_max_size 256M 2 php_value memory_limit 512M 3 php_value max_input_time 180 4 php_value max_execution_time 180
4.2. Via wp-config.php
Adicione o seguinte ao wp-config.php antes da linha final:
1 @ini_set( 'upload_max_filesize', '256M' ); 2 @ini_set( 'post_max_size', '256M' );
4.3. Via php.ini
Localize o php.ini no servidor. O caminho depende do alojamento; normalmente /etc/php/8.4/cli/php.ini ou configurável no cPanel («Select PHP Version» → «Switch to PHP Options»). Abra-o, encontre a diretiva upload_max_filesize e altere o valor:
1 upload_max_filesize = 256M 2 post_max_size = 256M
Guarde e reinicie o PHP via cPanel ou com um comando SSH. Se não tiver acesso ao php.ini, contacte o suporte do alojamento.
5. Soluções específicas para GoDaddy e DreamHost
GoDaddy
No alojamento partilhado da GoDaddy, os erros HTTP estão frequentemente relacionados com a ordem das bibliotecas de processamento de imagem. Adicione o seguinte ao functions.php do seu tema ativo:
1 add_filter( 'wp_image_editors', 'change_graphic_lib' ); 2 function change_graphic_lib( $array ) { 3 return array( 'WP_Image_Editor_GD', 'WP_Image_Editor_Imagick' ); 4 }
Este código força a biblioteca GD a ser a primeira, o que resolve a maioria dos casos de erro HTTP especificamente na GoDaddy.
DreamHost
Na DreamHost, os erros estão geralmente relacionados com conflitos de plugins ou temas. Primeiro, desative todos os plugins e mude para um tema padrão. Elimine temas e plugins não utilizados, pois podem deixar hooks residuais que interferem com o carregador. Se isso não ajudar, contacte o suporte da DreamHost: eles têm configurações de servidor personalizadas e a equipa de suporte conhece as especificidades.
O que fazer se o erro continuar a ocorrer
Se já percorreu toda a cadeia e os carregamentos continuam a falhar uma vez por semana, o problema é mais profundo do que permissões ou limites de PHP. Muito provavelmente, o culpado é um alojamento com restrições de servidor rigorosas (plano partilhado económico) ou um plugin mal escrito que substitui as definições do carregador de media a cada atualização.
Primeiro, exclua os plugins: desative tudo durante 24 horas e monitorize o comportamento do carregador. Se não houver falhas durante 24 horas, ative os plugins um a um com um intervalo de um dia até encontrar o culpado.
Se não o encontrar, mude de alojamento. A sério. Os planos partilhados económicos poupam na memória PHP e cortam os buffers de forma tão agressiva que nenhuma edição do .htaccess ajudará. Para um manuseamento estável de ficheiros de media no WordPress, precisa de um VPS ou de um alojamento gerido de qualidade com memory_limit de pelo menos 256M e max_execution_time de pelo menos 120 segundos.
Uma solução alternativa: carregue imagens via FTP e importe-as através do Add From Server. Mais lento do que o carregador nativo, mas funciona em qualquer alojamento e não depende dos limites do PHP.
⁉️🤔 Perguntas frequentes
Por que ocorrem erros de carregamento sem motivo aparente?
Os fornecedores de alojamento atualizam regularmente o software do servidor: pequenas correções de PHP, atualizações do Apache, alterações na configuração do ModSecurity. Caminhos, versões e definições mudam, e as permissões em
/wp-content/uploads/quebram. Não mexeu em nada, mas os carregamentos deixaram de funcionar. A solução: redefina as permissões para 744/755 para a pasta e 644 para os ficheiros dentro de/wp-content/uploads/, e verifique os limites do PHP.
O que devo fazer se nada neste artigo ajudou?
Ative o
WP_DEBUGnowp-config.php:define( 'WP_DEBUG', true );e repita o carregamento. O WordPress escreverá o erro específico em/wp-content/debug.log. Verá o erro fatal ou aviso exato do PHP: na maioria das vezes é esgotamento de memória (allowed memory size exhausted), pasta temporária inacessível (failed to open dir) ou um conflito específico de plugin. Com esta informação, o suporte do alojamento pode resolver o problema muito mais rapidamente.
Como carregar um ficheiro muito grande se o meu alojamento não me permite aumentar o limite?
Use FTP + o plugin Add From Server. Carregue o ficheiro para o servidor manualmente via FTP para
/wp-content/uploads/import/(ou qualquer outra pasta) e, em seguida, importe-o para a biblioteca de media através do plugin. O Add From Server obtém os ficheiros diretamente do sistema de ficheiros do servidor, contornando o carregador HTTP e todos os seus limites. Funciona para ficheiros de qualquer tamanho; a única limitação é o espaço em disco do seu plano. Para carregamentos em lote, crie uma pasta/wp-content/uploads/bulk-import/e carregue tudo para lá via FTP de uma só vez.
Os erros de carregamento de imagem podem ser prevenidos permanentemente?
Não podem ser completamente eliminados, mas o risco pode ser minimizado. Mantenha o PHP na versão atual (8.4 ou 8.5 em 2026), com
memory_limitnão inferior a 256M. Não instale plugins de segurança com definições padrão agressivas. Verifique as permissões em/wp-content/uploads/a cada seis meses. Após cada atualização do núcleo do WordPress ou do PHP, faça um carregamento de imagem de teste. Se tiver backups automáticos configurados, a reversão demora 5 minutos. E mantenha o acesso FTP à mão: sem ele, metade das soluções neste artigo ficam indisponíveis.
É necessário FTP para corrigir permissões?
Não. A alternativa é o Gestor de Ficheiros no cPanel (ou o equivalente do seu alojamento). Vá a Gestor de Ficheiros →
/wp-content/→ clique com o botão direito na pastauploads→ Alterar Permissões → defina 744. A lógica é a mesma; a interface é ligeiramente diferente. O Gestor de Ficheiros do cPanel trabalha com permissões exatamente como um cliente FTP: tudo é feito no navegador sem necessidade de software separado. Para utilizadores que acham os clientes FTP complicados, esta é a forma mais acessível de corrigir permissões em dois minutos.
Erro de carregamento corrigido, o que se segue?
Percorreu a cadeia e os carregamentos estão a funcionar. Agora é altura de prevenção, para não voltar a este problema daqui a um mês. Três coisas que vale a pena fazer de imediato:
- Registe as suas definições funcionais. Essas permissões (744/755), limites de PHP (256M), versão do PHP (8.4+): guarde-as nas suas notas. Durante a próxima migração ou atualização do servidor, irá restaurá-las num minuto em vez de uma hora de tentativa e erro.
- Configure a monitorização do espaço em disco. Metade dos erros de carregamento «súbitos» são causados por falta de espaço em disco. O WordPress recusa-se silenciosamente a escrever e você fica sem saber. Plugins gratuitos como o WP Health verificam o espaço disponível e enviam uma notificação para o seu email antes de o disco encher.
- Verifique os logs uma vez por mês. O
/wp-content/debug.log(se ativou oWP_DEBUG) mostrará um problema emergente muito antes de se tornar bloqueante. Alguns minutos por mês poupam horas de reparações não planeadas.
Ainda tem dúvidas ou encontrou um caso invulgar? Descreva a situação nos comentários e iremos analisá-la.



