PrestaShop: cómo cambiar la URL de la tienda y evitar errores 404
¿Estás pensando en cambiar la URL de tu tienda PrestaShop? Puede ser por una mudanza de marca, por comprar un dominio más corto, o porque estás migrando de un hosting a otro. Es un paso emocionante, pero también un momento delicado.
Si no se hace correctamente, el resultado es un escenario que asusta a cualquier comerciante: la temida página de errores 404 PrestaShop en todas tus fichas de producto. Esto no solo frustra a tus clientes, sino que hace que Google pierda la confianza en tu web, tumbando tu posicionamiento SEO de la noche a la mañana.
Pero no te preocupes. Como tu técnico de soporte de confianza, te voy a guiar paso a paso para que el proceso sea quirúrgico. Vamos a aprender a migrar dominio PrestaShop sin perder ni un solo visitante ni el trabajo SEO acumulado.
¿Por qué es tan fácil romper algo al cambiar la URL de PrestaShop?
Antes de tocar nada, es vital que entiendas la lógica interna de PrestaShop.
Cuando instalas la tienda, el sistema guarda la URL tienda PrestaShop (tu dominio) en la base de datos. Esa URL está incrustada en miles de sitios: enlaces internos, rutas de imágenes, archivos de configuración y en el famoso archivo .htaccess.
Si cambias el dominio en el panel de administración pero no tocas el archivo de configuración, el sistema seguirá intentando cargar los recursos desde la dirección antigua. Resultado: o no carga nada o te redirige a un bucle infinito.
Y aquí está el error más común del usuario novato: cambiar el dominio en el hosting (Syspanel) pero no actualizar la configuración de la tienda. Eso es como cambiar la cerradura de tu casa pero dejar la puerta abierta.
Preparación previa: El kit de supervivencia antes de migrar
No podemos lanzarnos a lo loco. Necesitamos un plan de acción. La preparación es el 80% del éxito en esta operación.
1. Haz una copia de seguridad completa (Sí o Sí)
Esto no es negociable. Antes de tocar un solo archivo, necesitas un salvavidas.
- Copia de la base de datos: Entra en tu panel de control (por ejemplo, Syspanel, el cual siempre accedes a través del puerto 2106), busca la sección de bases de datos MySQL y exporta un archivo
.sql. - Copia de los archivos: Descarga la carpeta
public_htmlcompleta vía FTP o desde el gestor de archivos de tu hosting.
Guarda ambas copias en tu ordenador. Si algo sale mal, podrás restaurar todo en 10 minutos.
2. Activa el modo mantenimiento
Esto es crucial para que los clientes no vean la tienda "a medio vestir" mientras trabajamos.
- Ve a tu panel de administración de PrestaShop (la URL suele ser
tudominio.com/admin). - Navega a Parámetros avanzados > Mantenimiento.
- Activa la opción "Activar el modo mantenimiento" y guarda.
Ahora solo tú (y el IP de tu oficina) podrás ver la tienda.
3. Decisión clave: ¿Cambiamos el dominio o lo redirigimos?
Aquí hay dos escenarios:
- Migración total: La tienda vivirá solo en el dominio nuevo. El antiguo desaparece.
- Redirección temporal: Mantienes el dominio viejo pero apuntando al nuevo (esto es lo mejor para SEO, pero lo veremos más adelante).
Para este tutorial, asumiremos que quieres migrar dominio PrestaShop al nuevo y que el antiguo te pertenece y puedes gestionar sus DNS.
El proceso paso a paso: Cómo cambiar la URL de la tienda en PrestaShop
Vamos a dividir esto en fases para que no te abrumes.
Fase 1: Configurar el dominio en el servidor (Syspanel)
Primero, tu nuevo dominio debe apuntar a tu servidor. Si aún no tienes el dominio alojado en tu hosting, haz lo siguiente:
- Accede a Syspanel (recuerda, el acceso es por el puerto 2106).
- Ve a la sección Web > Dominios.
- Añade el nuevo dominio y asígnale la misma raíz de documentos (
public_html) que el dominio antiguo. Esto es temporal, pero facilita la migración.
Alternativa: Si el nuevo dominio ya está configurado en otro servidor, simplemente deberás modificar los DNS en tu registrador de dominios (donde lo compraste) para que apunten a la IP de tu hosting actual.
Fase 2: Modificar la URL en la base de datos de PrestaShop
Este es el paso técnico más importante. Vamos a editar los parámetros de configuración.
- Ve a Syspanel y busca Bases de datos > MySQL.
- Haz clic en phpMyAdmin junto a la base de datos de tu tienda.
- Abre la tabla
ps_shop_url(el prefijops_puede variar). - Verás una fila con el dominio antiguo. Edítala y cambia el campo
domainydomain_sslpor tu nuevo dominio (sinhttp://). - Guarda los cambios.
Ahora el truco de los profesionales: Necesitamos reemplazar todas las menciones al dominio antiguo en las tablas de contenido. Para ello, usamos una consulta SQL.
En la pestaña SQL de phpMyAdmin, pega esto (reemplaza tudominioantiguo.com y tudominionuevo.com):
UPDATE ps_configuration SET value = REPLACE(value, 'http://www.tudominioantiguo.com', 'http://www.tudominionuevo.com');
UPDATE ps_shop_url SET domain = REPLACE(domain, 'tudominioantiguo.com', 'tudominionuevo.com');
UPDATE ps_shop_url SET domain_ssl = REPLACE(domain_ssl, 'tudominioantiguo.com', 'tudominionuevo.com');
UPDATE ps_links SET link = REPLACE(link, 'tudominioantiguo.com', 'tudominionuevo.com');
[WARNING] Ten mucho cuidado con esta consulta. Asegúrate de que el prefijo de las tablas coincide (si no es
ps_, cámbialo). Si no te sientes seguro, contacta con soporte. Una mala consulta puede corromper la base de datos.
Fase 3: Limpiar la caché y regenerar el .htaccess
Aquí es donde evitamos los famosos errores 404 PrestaShop.
- En tu panel de administración, ve a Parámetros avanzados > Rendimiento.
- Haz clic en Vaciar la caché (tanto de Smarty como de Symfony).
- Ahora ve a Parámetros avanzados > Herramientas.
- En la sección URLs, verás una opción para regenerar el archivo
.htaccess. Haz clic en Guardar (o en el botón de regenerar si existe).
Este archivo es el responsable de las redirecciones internas y de eliminar el index.php de la URL. Si no lo regeneras, tendrás errores de "página no encontrada" en todas las categorías.
Fase 4: Probar la tienda en modo mantenimiento
Abre tu navegador en modo incógnito y escribe https://tudominionuevo.com. Deberías ver la pantalla de mantenimiento (si la configuraste).
Ahora, prueba una URL interna típica, por ejemplo, https://tudominionuevo.com/categorias/electronica. Si ves la página de mantenimiento o la propia categoría, es que la reescritura funciona.
Prueba crítica: Haz clic en un producto. Si la URL se ve limpia (sin index.php) y carga, hemos ganado la batalla.
El SEO y los errores 404: La redirección 301 (La clave del éxito)
Ya tenemos la tienda funcionando en el nuevo dominio. Pero, ¿qué pasa con el antiguo? Si alguien teclea la URL vieja, obtendrá un error 404. Y lo que es peor, Google seguirá indexando la versión antigua.
Para solucionarlo, debemos implementar una redirección 301. Esto le dice a Google: "Este contenido se ha movido permanentemente a esta nueva dirección, por favor, actualiza tus registros".
Configurando la redirección en el dominio antiguo
- Ve a Syspanel (puerto 2106).
- Abre el gestor de archivos y navega hasta la carpeta pública del dominio antiguo.
- Crea o edita el archivo
.htaccess(si no existe, crea uno nuevo). - Pega este código al principio del archivo:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?tudominioantiguo\.com [NC]
RewriteRule ^(.*)$ https://www.tudominionuevo.com/$1 [R=301,L]
</IfModule>
[TIP] No olvides cambiar
tudominioantiguo.comytudominionuevo.compor tus dominios reales. Esta regla captura cualquier URL del dominio viejo y la envía a la misma ruta en el nuevo, sin perder el producto o categoría.
¿Y si no tengo acceso al hosting antiguo?
Si el dominio antiguo ya no está en tu poder, deberás ir al registrador de dominios (Donde lo compraste, ej: GoDaddy, Namecheap) y buscar la opción de Redirección de dominio web o Forwarding. Configúrala con un redireccionamiento permanente (301) hacia el nuevo dominio.
Errores comunes al migrar y cómo solucionarlos
Aunque sigas los pasos, a veces aparecen fantasmas. Aquí tienes los más comunes y su solución.
1. El panel de administración no carga después del cambio
Síntoma: Intentas entrar a tudominionuevo.com/admin y te da error 500 o te redirige al dominio antiguo.
Solución: La caché de Symfony guarda la URL. Borra la carpeta var/cache de tu servidor vía FTP. Dentro de esa carpeta, elimina las subcarpetas dev y prod. Luego, recarga.
2. Las imágenes están rotas
Síntoma: Las fotos de los productos no se ven, aunque la tienda carga.
Solución: Las URLs de las imágenes están cacheadas en la tabla ps_image. Ve a Parámetros avanzados > Rendimiento y activa el modo "Recargar las imágenes". Si no funciona, usa phpMyAdmin y ejecuta:
UPDATE ps_image_shop SET cover = cover;
(Esto es un truco para forzar la regeneración del caché de imágenes). O simplemente, en PrestaShop ve a Preferencias > Imágenes y haz clic en "Regenerar miniaturas".
3. Aparece el famoso error "Página no encontrada" en el checkout
Síntoma: El carrito funciona, pero al finalizar la compra, error 404.
Solución: Esto suele pasar por enlaces amigables mal regenerados. Vuelve a Parámetros avanzados > Herramientas y haz clic en "Guardar" para regenerar el .htaccess. Además, verifica que en Parámetros avanzados > Rendimiento tienes desactivada la opción "Combinar archivos" temporalmente.
4. El certificado SSL (HTTPS) da error
Síntoma: El candado de seguridad aparece roto.
Solución: Aunque tengas SSL, la tienda puede estar forzando HTTP. Ve a Parámetros avanzados > General y asegúrate de que "Activar SSL" está en Sí y que "Habilitar el SSL en todas las páginas" también está en Sí.
Preguntas frecuentes (FAQ) sobre el cambio de URL
Aquí tienes las dudas que más me llegan al soporte:
¿Pierdo mi posicionamiento SEO al cambiar de dominio?
Sí, si no haces las redirecciones 301 correctamente. Si migras y configuras todo como te he enseñado, el impacto será mínimo y temporal. Google tardará unas semanas en rastrear y actualizar los resultados. La paciencia es clave.
¿Cuánto tarda en desaparecer los errores 404 en Google Search Console?
No desaparecen de inmediato. Deberás enviar el nuevo sitemap (tudominionuevo.com/sitemap.xml) en Google Search Console. Las URLs antiguas se marcarán como "No encontradas" durante un tiempo, pero si la redirección 301 está activa, Google las irá actualizando. Es normal ver picos de 404 durante 2-4 semanas.
¿Debo cambiar la URL en el archivo config/settings.inc.php?
En versiones antiguas de PrestaShop (1.6 y anteriores), sí. En PrestaShop 1.7 y 8, toda la configuración se gestiona desde la base de datos, así que no es necesario tocar ese archivo (de hecho, ya no existe en las versiones nuevas).
¿Puedo usar el mismo hosting para ambos dominios durante la migración?
Sí, es lo recomendable. De hecho, es la forma más segura de hacerlo. Así puedes probar la tienda nueva antes de cancelar el servicio del dominio antiguo. Recuerda, en Syspanel (puerto 2106), puedes gestionar ambos dominios apuntando a la misma carpeta o a carpetas diferentes.
Consejo final: La verificación post-migración
Una vez que todo parezca funcionar, no te relajes. Haz una auditoría rápida:
- Revisa los enlaces internos: Usa herramientas gratuitas como "Screaming Frog" (versión gratuita) para rastrear tu web nueva y detectar cualquier enlace roto interno.
- Actualiza tu perfil de Google My Business (si lo tienes) con la nueva URL.
- Actualiza las URLs en tus redes sociales y firmas de email.
Cambiar la URL de tu tienda PrestaShop es como mudarte de casa: al principio todo está patas arriba, pero con una buena planificación (y estas instrucciones), estarás vendiendo en tu nueva dirección sin perder ni un cliente.
Si en algún momento del proceso sientes que te ahogas, recuerda que siempre puedes pedir ayuda a tu proveedor de hosting. Un buen soporte técnico es tu mejor aliado para evitar los temidos errores 404 PrestaShop. ¡Mucha suerte con la migración!
