Empieza clasificando la imagen rota: el HTML puede seguir apuntando al dominio antiguo, la URL correcta puede devolver 404 porque el archivo no se copió, o el archivo puede existir pero el servidor web no puede leerlo. En el navegador se parecen, pero la reparación es distinta.
Usa la petición fallida para localizar la capa
Inspecciona varias imágenes rotas y registra la URL solicitada, el código HTTP y la respuesta. Después comprueba si cada original existe físicamente en la ruta de uploads esperada. Un search-replace en base de datos no puede recuperar un archivo ausente, y volver a copiar uploads no corrige una URL antigua guardada en contenido.
Evidencia que debes recoger antes de cambiar rutas
- URL antigua y nueva del sitio, y URL exacta que el HTML genera para la imagen.
- Existencia física del archivo en el directorio año/mes esperado.
- Configuración de uploads de WordPress y nuevo document root.
- Propietario, grupo y permisos de lectura de archivos y directorios representativos.
- Origen del CDN y comportamiento HTTPS si los medios pasan por una capa edge.
Cuatro fallos de migración que hay que separar
- URLs antiguas guardadas: contenido o metadatos todavía contienen el dominio o subdirectorio anterior.
- Copia de uploads incompleta: la base de datos se movió pero faltan archivos.
- Ruta diferente: el servidor nuevo espera uploads bajo otro document root.
- Propiedad o CDN: el archivo existe pero el origen no puede servirlo correctamente.
Repara URLs, archivos y permisos en ese orden
- Haz copia de la base de datos antes de un reemplazo de URLs que respete datos serializados.
- Vuelve a copiar los uploads que falten comparando recuentos o checksums.
- Restaura propietario, grupo y permisos de lectura documentados; evita chmod amplios.
- Purga CDN y cachés de miniaturas solo cuando los originales ya respondan correctamente.
¿Routing de migración o permisos del sistema de archivos?
Si la URL migrada no resuelve bien, compáralo con los enlaces permanentes que dan 404 después de migrar. Si el archivo existe pero el servidor informa de acceso denegado, revisa la propiedad antes de usar chmod. Ambas causas pueden coexistir: valida un original desde disco hasta navegador.
No regeneres miniaturas antes de recuperar los originales
Regenerar derivados no puede recrear una imagen fuente que falta y puede consumir disco mientras la migración sigue incompleta.
Cómo verificar la reparación
Originales y tamaños derivados representativos deben devolver 200, el HTML debe usar solo dominio y esquema canónicos y una imagen nueva debe heredar ruta, propiedad y URL correctas sin intervención manual.