Error: El servidor no puede procesar la imagen. Esto puede ocurrir si el servidor está ocupado o no tiene suficientes recursos para completar la tarea. Puede ayudar el subir una imagen más pequeña. El tamaño máximo sugerido es de 2560 píxeles

Artículos Guías Manuales Sistemas Linux Windows Redes MySql Binario 0 Binario Cero Artículos Guías Manuales Sistemas Linux Windows Redes MySql Binario 0 Binario Cero

Este error no siempre tiene que ver con el tamaño real de la imagen. Generalmente ocurre cuando WordPress falla en procesar la imagen después de subirla, especialmente al generar miniaturas.

Índice de posibles causas y soluciones:

  1. Bloqueo en Nginx (proxy o backend)
  2. Límites de PHP (php.ini)
  3. Fallo en la librería de procesamiento de imágenes (GD o Imagick)
  4. Imagen corrupta o con datos no estándar
  5. Permisos de archivos/carpetas
  6. Filtros de WordPress (big_image_size_threshold)
  7. Conflictos con plugins o temas
  8. Errores silenciosos (sin log)

1. Bloqueo en Nginx (proxy o backend)

Síntoma:

  • Aparece error 413 Request Entity Too Large en logs.
  • El archivo no llega ni siquiera a WordPress.

Verificación:

grep -Ri client_max_body_size /etc/nginx/

Y revisar logs:

tail -f /var/log/nginx/error.log

Solución:

En /etc/nginx/nginx.conf o en el bloque server {}:

client_max_body_size 20M;

Recargar Nginx:

sudo nginx -t && sudo systemctl reload nginx

2. Límites de PHP (php.ini)

Síntoma:

  • Imagen no se sube o se corta sin error.
  • No aparece en la biblioteca de medios.

Verificación:

php -i | grep -Ei 'upload_max_filesize|post_max_size|memory_limit|max_execution_time'

Valores recomendados:

upload_max_filesize = 20M
post_max_size = 25M
memory_limit = 512M
max_execution_time = 60

Recargar PHP-FPM:

sudo systemctl restart php8.2-fpm

3. Fallo en la librería de imágenes (GD o Imagick)

Síntoma:

  • Imagen se sube, pero no se generan miniaturas.
  • Ocurre solo con ciertos tipos: PNG, WebP, etc.

Verificación:

php -m | grep -Ei 'gd|imagick'

También con phpinfo() desde navegador para ver cuál usa WordPress.

Soluciones:

  • Instalar php-imagick:

    sudo apt install php-imagick
    sudo systemctl restart php8.2-fpm
  • Forzar Imagick en WordPress (functions.php):

    add_filter('wp_image_editors', function () { return ['WP_Image_Editor_Imagick', 'WP_Image_Editor_GD']; });

4. Imagen corrupta o no estándar

Síntoma:

  • Solo una imagen concreta falla.
  • imagecreatefrompng() o Imagick fallan sin error visible.

Verificación:

  • Usar script PHP de prueba para cargar imagen manualmente.
  • Verificar que getimagesize() y imagecreatefrom*() no devuelven false.

Solución:

  • Reconvertir la imagen con una herramienta como GIMP, Photoshop o convert (ImageMagick CLI).
  • O subirla como JPEG para evitar problemas con transparencias y metadatos raros.

5. Permisos de archivos y carpetas

Síntoma:

  • Imagen se sube pero no se genera nada.
  • WordPress no puede escribir miniaturas.

Verificación:

ls -ld wp-content/uploads

Solución:

sudo chown -R www-data:www-data wp-content/uploads
sudo chmod -R 755 wp-content/uploads

6. Filtros de WordPress (big_image_size_threshold)

Síntoma:

  • WordPress intenta escalar automáticamente imágenes grandes (>2560px).

Verificación:

  • Error aparece solo con imágenes anchas o altas, incluso si pesan poco.

Solución:

Desactivar reescalado automático:

add_filter('big_image_size_threshold', '__return_false');

7. Conflictos con plugins o temas

Síntoma:

  • El error ocurre solo con ciertos temas o con plugins activos.

Verificación:

  • Cambiar al tema Twenty Twenty-Four.
  • Desactivar temporalmente todos los plugins.
  • Probar la subida de nuevo.

Solución:

  • Activar plugins uno por uno hasta identificar el conflictivo.

8. Errores silenciosos (sin log)

Síntoma:

  • No se registra nada en debug.log ni en logs de PHP/Nginx.

Verificación:

En wp-config.php, habilita:

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);

Luego fuerza un error_log('Probando subida'); en functions.php para comprobar que el log se escribe.

Solución:

  • Usar un plugin o snippet que registre manualmente errores en procesos críticos (como en wp_handle_upload o wp_generate_attachment_metadata).

BONUS: ¿Cómo probar todo de forma aislada?

Crear un archivo test-imagen.php en la raíz para hacer pruebas con GD:

<?php
$path = __DIR__ . '/wp-content/uploads/2025/08/test.png';
$img = @imagecreatefrompng($path);
if ($img) {
echo 'GD cargó la imagen';
imagedestroy($img);
} else {
echo 'GD no pudo cargar la imagen';
}

Compartir:

Binario 0
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.