---
title: "Error 404 después de migrar WordPress: causas y cómo arreglarlo"
description: "Migraste tu WordPress y ahora las páginas dan error 404 o faltan imágenes. Te explico por qué pasa y cómo arreglarlo paso a paso, sin perder tu contenido."
url: https://www.iniciatuweb.com/error-404-despues-de-migrar-wordpress/
date: 2026-10-25
modified: 2026-10-25
author: "Antonio Gomes"
image: https://www.iniciatuweb.com/wp-content/uploads/2026/10/error-404-despues-de-migrar-wordpress.png
categories: ["Guías"]
type: post
lang: es
---

# Error 404 después de migrar WordPress: causas y cómo arreglarlo

Mudaste tu WordPress a otro hosting o a otro dominio, la portada carga bien… pero al entrar a cualquier página, entrada o producto aparece **«Error 404: página no encontrada»**. O cargan las páginas, pero faltan las imágenes. El error 404 después de migrar WordPress tiene una buena noticia: **muchas veces el contenido llegó completo**, y lo compruebas viendo tus páginas en el panel. Lo que falla es cómo el servidor nuevo encuentra cada página, o que la web sigue apuntando a direcciones viejas. En esta guía te explico cómo encontrar la causa y arreglarlo paso a paso.

## Por qué aparece el error 404 después de migrar WordPress

- **Falta el archivo *.htaccess* o no tiene las reglas de WordPress.** Es un archivo oculto, y algunos programas de FTP o copias manuales no lo copian. Sin él, en servidores Apache o LiteSpeed solo funcionan la portada y el panel.
- **Las direcciones guardadas en la base de datos siguen siendo las viejas.** Si cambiaste de dominio o pasaste de *http* a *https*, los enlaces internos y las imágenes pueden seguir apuntando a la dirección anterior.
- **No se copió todo *wp-content/uploads*.** Si las páginas cargan pero las imágenes dan 404, suele indicar que faltan archivos de esa carpeta (el paso 5 explica cómo comprobarlo).
- **Cambió la estructura de las direcciones.** Si en la web nueva las entradas tienen otra forma de dirección (por ejemplo, antes llevaban la fecha y ahora no), los enlaces viejos que Google y otras webs tienen guardados ya no existen.
- **El servidor nuevo usa Nginx.** Nginx no lee *.htaccess*: las reglas para las direcciones amigables van en la configuración del servidor, y eso lo hace el hosting.

## Antes de tocar nada

- **Mira qué da 404:** ¿todas las páginas menos la portada?, ¿solo las imágenes?, ¿solo direcciones antiguas que alguien guardó? Cada caso tiene un paso distinto abajo.
- **Haz una copia de la base de datos** antes de cambiar direcciones en ella.
- **Si la migración la hizo tu hosting o un plugin**, pregúntales si copiaron el archivo *.htaccess* y toda la carpeta *wp-content*.

## Cómo arreglarlo, paso a paso

### 1. Guarda de nuevo los enlaces permanentes

Es lo primero y lo más sencillo. En tu panel, ve a *Ajustes → Enlaces permanentes* y, sin cambiar nada, haz clic en *Guardar cambios*. WordPress vuelve a generar sus reglas y, si puede escribir en el archivo, crea o actualiza el *.htaccess*. Prueba otra vez una página que daba 404.

### 2. Si sigue igual, revisa el *.htaccess* a mano

Entra al administrador de archivos del hosting, activa la opción de ver archivos ocultos y busca *.htaccess* en la carpeta raíz de tu web. Si no existe, créalo. Si existe, comprueba que tenga el bloque de WordPress. El bloque estándar, según la documentación oficial, es este:

```
# BEGIN WordPress
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
```

Si tu WordPress está en una subcarpeta (por ejemplo, *tudominio.com/blog*), cambia `RewriteBase /` por `RewriteBase /blog/` y la última línea por `RewriteRule . /blog/index.php [L]`. No borres otras reglas que ya estén en el archivo: en cPanel puede haber un bloque que fija la versión de PHP (empieza con `# php -- BEGIN cPanel-generated handler`) y puede haber redirecciones que necesitas.

### 3. Si el hosting usa Nginx, pídeselo al soporte

Si en tu web no hay *.htaccess* que valga, porque el servidor es Nginx, escríbele al soporte: «mi WordPress da 404 en todas las páginas menos la portada; necesito las reglas de enlaces permanentes de WordPress en la configuración de Nginx». Es una configuración que la documentación de WordPress describe para Nginx.

### 4. Cambia las direcciones viejas por las nuevas

Antes de este paso, haz una copia de la base de datos: un reemplazo mal escrito afecta a todo el sitio. Si cambiaste de dominio o de *http* a *https*, revisa primero *Ajustes → Generales*: *Dirección de WordPress (URL)* y *Dirección del sitio (URL)* deben tener la dirección nueva. Después hay que cambiar la dirección vieja en todo el contenido. No lo hagas con un «buscar y reemplazar» directo en phpMyAdmin: WordPress guarda algunos datos en un formato especial (serializado) que se rompe si cambia el largo del texto. Usa una herramienta que lo respete:

- Con WP-CLI, primero en modo de prueba, que solo cuenta los cambios sin hacerlos: `wp search-replace 'https://viejo.com' 'https://nuevo.com' --skip-columns=guid --dry-run`. Si los números tienen sentido, repite el comando sin `--dry-run`. El `--skip-columns=guid` deja intacto el identificador interno de cada entrada, que la guía oficial de WordPress pide no cambiar.
- Sin terminal, con un plugin de búsqueda y reemplazo que respete los datos serializados, como Better Search Replace, también probando primero en modo de prueba.

### 5. Si faltan imágenes, completa la carpeta *uploads*

Si las páginas cargan pero las imágenes dan 404, abre una imagen rota en una pestaña nueva y mira su dirección: si apunta al dominio nuevo, falta el archivo en *wp-content/uploads* y hay que volver a copiarlo desde el hosting anterior o desde la copia de seguridad. Si apunta al dominio viejo, es el paso 4.

### 6. Si cambiaste la forma de las direcciones, crea redirecciones

Si tus páginas ahora tienen otra dirección, las viejas seguirán dando 404 a quien llegue desde Google, desde otras webs o desde enlaces guardados. Crea una redirección 301 de cada dirección vieja a la nueva, con un plugin como Redirection o con reglas en el *.htaccess*. La 301 le dice a Google que la página se mudó de forma permanente y le da la dirección nueva. Puede haber altibajos temporales en las posiciones, y conservas esas páginas en el índice. En *Google Search Console*, el informe *Páginas* te muestra las direcciones que Google ve con error 404.

## Cómo evitar que vuelva a pasar

- **Usa una herramienta de migración** o la migración de tu hosting, que copian archivos ocultos y base de datos de una vez.
- **Mantén la misma estructura de direcciones** en la web nueva, salvo que tengas una buena razón para cambiarla.
- **Antes de apuntar el dominio al servidor nuevo**, prueba la web allí y revisa algunas páginas, imágenes y formularios.
- **Revisa Search Console** en los días siguientes para ver si Google encuentra errores 404 nuevos.

Si prefieres que alguien se encargue de la mudanza completa, un [servicio de mantenimiento de WordPress](https://www.iniciatuweb.com/servicios/servicio-de-mantenimiento-de-wordpress/) o una [reparación](https://www.iniciatuweb.com/servicios/servicio-de-reparacion-de-wordpress/) después de una migración que salió mal lo deja todo funcionando.

## Preguntas frecuentes

### ¿Perdí mi contenido?

Si la portada carga y ves tus páginas en el panel, no: el contenido está. El 404 viene de cómo el servidor busca cada página, no de que falte.

### ¿Por qué la portada funciona y lo demás no?

Porque la portada no necesita las reglas de enlaces permanentes y el resto sí. Suele ser señal de que falta el *.htaccess* o no tiene el bloque de WordPress (pasos 1 y 2), o de que el servidor es Nginx (paso 3).

### ¿Los errores 404 me bajan en Google?

Que existan direcciones que dan 404 no castiga a toda tu web, pero Google retira de sus resultados las páginas que dan 404. Si tenían visitas, conviene redirigirlas a su dirección nueva (paso 6).

### ¿Y si después de migrar veo otro error?

Si aparece «Error al establecer una conexión con la base de datos», revisa [la guía de ese error](https://www.iniciatuweb.com/error-conexion-base-de-datos-wordpress/): tras una mudanza, revisa que *wp-config.php* tenga los datos del hosting nuevo. Si no puedes entrar al panel, mira [qué hacer cuando no puedes entrar a wp-admin](https://www.iniciatuweb.com/no-puedo-entrar-a-wp-admin/).

## En resumen

El error 404 después de migrar WordPress en muchos casos se arregla guardando de nuevo los enlaces permanentes y revisando el *.htaccess*. Si cambiaste de dominio, cambia las direcciones viejas con una herramienta que respete los datos serializados; si faltan imágenes, completa *uploads*; y si cambió la forma de las direcciones, crea redirecciones 301.

¿Tu migración dejó la web llena de errores y no quieres tocar el servidor? Me encargo de la [**reparación de tu WordPress**](https://www.iniciatuweb.com/servicios/servicio-de-reparacion-de-wordpress/), o [**escríbeme por WhatsApp**](https://wa.me/584167296081?text=Hola%20Antonio%2C%20migr%C3%A9%20mi%20WordPress%20y%20ahora%20da%20error%20404%2C%20necesito%20ayuda) y cuéntame qué pasó.
