PrestaShop: Cambiar la URL de la tienda (dominio) sin perder datos
¿Estás pensando en cambiar el dominio de tu tienda PrestaShop? Puede ser por un rebranding, porque has comprado un dominio más corto o porque te mudas a un nuevo servidor. Es un paso emocionte, pero también delicado. Si se hace mal, podrías quedarte con una tienda rota o, peor aún, perder datos valiosos (pedidos, clientes, productos).
Tranquilo, no estás solo en esto. En esta guía extensa y paso a paso, te voy a explicar exactamente cómo cambiar la URL de tu tienda PrestaShop (el dominio) sin perder ni un solo dato. Vamos a hacerlo de forma segura, con copias de seguridad y con trucos de SEO para que no pierdas posicionamiento en Google.
Vamos a ello.
Antes de Empezar: Qué Significa Cambiar el Dominio en PrestaShop
Cuando hablamos de cambiar dominio PrestaShop, no solo hablamos de cambiar un texto en una pantalla. La URL de tu tienda está "pegada" en muchos sitios: en la base de datos, en los enlaces internos, en las imágenes y en los archivos de configuración.
Si solo cambias el dominio en el panel de administración y no actualizas el resto, tendrás una tienda donde las imágenes no cargan, los botones de "carrito" no funcionan y Google te mostrará errores 404 por todas partes.
Por eso, nuestro objetivo es hacer una migración limpia. Puedes hacerlo de dos maneras:
- Cambio de dominio en el mismo servidor (solo cambias la dirección, los archivos quedan donde están).
- Migrar PrestaShop a un nuevo servidor con un dominio nuevo (más complejo, pero aquí te doy las claves).
En este artículo, nos centraremos en el cambio de dominio, pero los pasos de base de datos y SEO sirven para ambas situaciones.
Paso 1: La Copia de Seguridad (Tu Red de Seguridad)
Este es el paso más importante. Nunca, jamás, toques un archivo o la base de datos sin una copia de seguridad. Piensa en ello como un seguro a todo riesgo. Si algo sale mal, puedes volver atrás en 10 minutos.
### Cómo hacer la copia de seguridad de archivos
Accede a tu panel de control de hosting (cPanel, Syspanel, Plesk, etc.) o usa FTP (FileZilla, por ejemplo).
- Ve a la carpeta donde está instalada tu tienda (normalmente
public_htmlowww). - Selecciona todos los archivos y carpetas.
- Haz clic derecho y elige "Comprimir" o "Crear archivo ZIP". Descarga ese archivo ZIP a tu ordenador.
### Cómo hacer la copia de seguridad de la base de datos
PrestaShop guarda casi todo (productos, clientes, pedidos, configuraciones) en una base de datos MySQL.
- Entra en phpMyAdmin (desde tu panel de hosting).
- Selecciona la base de datos de tu tienda.
- Ve a la pestaña "Exportar".
- Elige el método "Rápido" y formato SQL. Pulsa "Continuar" y descarga el archivo
.sql.
[WARNING] IMPORTANTE: Guarda estas copias en tu PC o en la nube, pero nunca dentro de la carpeta de tu tienda. Si el servidor falla, perderías todo.
Paso 2: Preparar el Nuevo Dominio (DNS)
Antes de tocar PrestaShop, tienes que "decirle" al mundo que tu dominio nuevo existe. Esto se hace a través de los DNS (sistema de nombres de dominio).
- Ve a tu proveedor de dominios (donde compraste el dominio nuevo) y busca "Gestión de DNS" o "Nameservers".
- Deberás apuntar los DNS a tu servidor de hosting.
[TIP] Si tu hosting tiene un panel tipo Syspanel (accesible por el puerto 2106), suele tener una opción de "Dominios" para gestionar esto fácilmente. Si no sabes qué DNS poner, contacta con tu proveedor de hosting y te darán los valores exactos (suelen ser dos o cuatro direcciones tipo
ns1.tuhosting.com).
¿Cuánto tarda? Los cambios de DNS pueden tardar entre 2 y 48 horas en propagarse por todo el mundo. No te asustes si a las 2 horas no funciona desde tu móvil; es normal.
Paso 3: Cambiar la URL en el Panel de Administración de PrestaShop
Ahora sí, vamos a tocar la configuración interna. PrestaShop guarda la URL en dos sitios clave dentro del panel de administración.
### Cambiar en "Parámetros de la tienda"
- Accede a tu back-office de PrestaShop (normalmente
tudominio.com/admin). - Ve al menú "Parámetros de la tienda" (o "Configuración").
- Haz clic en "General".
- Busca la sección "URL de la tienda".
- Aquí verás dos campos: "URL de la tienda" y "URL base".
- Cambia la URL por tu nuevo dominio (ej:
https://www.nuevotienda.com). - Guarda los cambios.
[WARNING] Si pones la URL nueva aquí y aún no has configurado los DNS, no podrás acceder al panel de administración porque el sistema te redirigirá a un dominio que aún no carga. Por eso, es recomendable hacer este paso después de que los DNS hayan propagado o, si es urgente, hacerlo editando el archivo
settings.inc.php(aunque es más técnico).
### Cambiar en "Parámetros avanzados"
- En el menú de la izquierda, baja hasta "Parámetros avanzados".
- Selecciona "Rendimiento" (o "Performance").
- En la parte inferior derecha, verás un botón que dice "Vaciar la caché". Púlsalo. Esto es crucial para evitar caches antiguas.
También revisa en "Parámetros avanzados" > "Base de datos" que todo esté correcto (aunque no deberías cambiar nada ahí manualmente).
Paso 4: La Base de Datos (El Corazón de la Migración)
Aquí es donde la gente se vuelve loca. La base de datos tiene miles de referencias al dominio antiguo. Si no las cambiamos, la tienda funcionará a medias.
Vamos a usar una herramienta llamada phpMyAdmin para hacer un "buscar y reemplazar" inteligente.
[INFO] No uses la función "Buscar y reemplazar" normal de phpMyAdmin. Es peligrosa porque puede romper la serialización de los datos (un formato especial de PHP). Usaremos una consulta SQL específica o una herramienta como "Search and Replace" de WP-CLI (aunque aquí te doy la opción manual).
### Opción A: La consulta SQL segura (Recomendada)
- Abre phpMyAdmin y selecciona tu base de datos de PrestaShop.
- Ve a la pestaña "SQL".
- Copia y pega el siguiente bloque de código. Pero antes, reemplaza
www.tudominioantiguo.compor tu dominio antiguo real ywww.tudominionuevo.compor el nuevo.
UPDATE ps_configuration SET value = REPLACE(value, 'http://www.tudominioantiguo.com', 'http://www.tudominionuevo.com') WHERE value LIKE '%www.tudominioantiguo.com%';
UPDATE ps_shop_url SET domain = REPLACE(domain, 'www.tudominioantiguo.com', 'www.tudominionuevo.com'), domain_ssl = REPLACE(domain_ssl, 'www.tudominioantiguo.com', 'www.tudominionuevo.com');
UPDATE ps_shop SET domain = REPLACE(domain, 'www.tudominioantiguo.com', 'www.tudominionuevo.com'), domain_ssl = REPLACE(domain_ssl, 'www.tudominioantiguo.com', 'www.tudominionuevo.com');
UPDATE ps_meta SET url_rewrite = REPLACE(url_rewrite, 'www.tudominioantiguo.com', 'www.tudominionuevo.com');
Explicación: Este script busca en las tablas de configuración (ps_configuration), de URLs (ps_shop_url) y de tiendas (ps_shop) cualquier mención al dominio antiguo y lo reemplaza por el nuevo.
[TIP] Si tu prefijo de tabla no es
ps_, tendrás que cambiarlo en el código. Normalmente esps_por defecto, pero puede serprestashop_o similar. Lo puedes ver en el nombre de las tablas a la izquierda de phpMyAdmin.
### Opción B: Usar un script (Más sencillo pero menos control)
Existen scripts gratuitos como "Better Search Replace" (puedes subirlo temporalmente a tu servidor). Funciona muy bien y es más seguro que el reemplazo manual.
- Descarga el script y súbelo a la raíz de tu hosting.
- Ejecútalo desde el navegador.
- Rellena los campos: dominio antiguo, dominio nuevo, selecciona la base de datos y actívalo.
Paso 5: Actualizar Archivos de Configuración (Si es necesario)
En PrestaShop 1.7 y versiones posteriores, la configuración se guarda en la base de datos. Pero en versiones antiguas (1.6 o anteriores), existe un archivo llamado config/settings.inc.php.
Si tu tienda es antigua, abre ese archivo con un editor de texto (desde el panel de archivos de tu hosting) y busca las líneas que contengan _DB_SERVER_ o __PS_BASE_URI__.
Asegúrate de que la URI base sea correcta (ej: / si está en la raíz). No suele ser necesario cambiarlo para un cambio de dominio, pero es bueno revisarlo.
Paso 6: El Archivo .htaccess (Regenerar)
PrestaShop genera un archivo .htaccess para las URLs amigables (SEO). Este archivo tiene reglas específicas para el dominio antiguo.
- Ve a la carpeta raíz de tu tienda.
- Elimina el archivo
.htaccess. No te preocupes, es regenerable. - Ve al back-office de PrestaShop (si puedes acceder) o espera a que se regenere automáticamente al cargar la tienda.
- Si no se regenera, ve a "Parámetros de la tienda" > "Tráfico y SEO" y activa/desactiva la opción "Usar URL amigables" y guarda. Esto fuerza la recreación del archivo.
[INFO] Este paso es clave para evitar errores 404 en tus páginas de producto y categorías.
Paso 7: SEO y Redirecciones (No Pierdas tu Posicionamiento)
Este es el paso que la mayoría olvida y luego llora con Google. Si tu tienda antigua tenía buena posición en Google, al cambiar de dominio tienes que avisarle.
### Redirecciones 301
Las redirecciones 301 son avisos permanentes que le dicen a Google: "El contenido de esta página antigua ha cambiado de sitio, muévete a esta nueva dirección".
- En tu archivo
.htaccess(el nuevo que se ha generado), añade al final estas líneas:
# Redirecciones 301 para cambio de dominio
RewriteEngine On
RewriteCond %{HTTP_HOST} ^tudominioantiguo.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www.tudominioantiguo.com [NC]
RewriteRule ^(.*)$ http://www.tudominionuevo.com/$1 [L,R=301,NC]
Esto hará que cualquier persona que visite tu dominio antiguo sea redirigida automáticamente al nuevo, sin perder el "jugo" SEO.
### Google Search Console
- Añade tu dominio nuevo como una nueva propiedad en Google Search Console.
- Añade tu dominio antiguo también (si no lo tenías).
- Utiliza la herramienta "Cambio de dirección" dentro de la propiedad antigua para indicar que te has mudado al nuevo sitio. Sigue los pasos que te pide (verificar el nuevo sitio, etc.).
### Actualiza tus enlaces internos y externos
No puedes controlar los enlaces externos (de otras webs), pero sí los internos. Revisa que en tu base de datos no queden enlaces antiguos en las descripciones de productos o en los menús. (El script de SQL del Paso 4 ya hace la mayoría, pero a veces hay enlaces en campos de texto que no se actualizan automáticamente).
Paso 8: Comprobación Final (Antes de Celebrar)
No lances las campanas al vuelo todavía. Toca verificar que todo funciona.
- Página de inicio: Carga tu dominio nuevo. ¿Se ve bien?
- Imágenes: Haz clic en un producto. ¿Se ven las fotos? Si no, el problema está en la base de datos o en el caché de imágenes. Ve a "Parámetros avanzados" y limpia la caché.
- Carrito: Añade un producto al carrito y haz una prueba de compra (no finalices, solo llega al paso de pago).
- Panel de administración: Accede a tu back-office con el nuevo dominio.
[WARNING] Si al entrar al back-office te redirige al dominio antiguo, borra las cookies del navegador o usa una ventana de incógnito. Si el problema persiste, revisa el archivo
config/settings.inc.php(versiones antiguas) o la tablaps_shop_urlde la base de datos.
Preguntas Frecuentes (FAQ)
### ¿Puedo cambiar el dominio sin perder los pedidos antiguos?
Sí, totalmente. Los pedidos están en la base de datos. Mientras hagas la copia de seguridad y el reemplazo de URLs en la base de datos, tus pedidos y clientes seguirán ahí. Lo que no se actualiza automáticamente son los correos electrónicos de confirmación que apuntan a la URL antigua, pero eso es solo informativo.
### ¿Qué pasa con mi certificado SSL en el nuevo dominio?
El certificado SSL (el candado de seguridad) es específico para un dominio. Deberás contratar o activar uno nuevo para el dominio nuevo. La mayoría de hostings ofrecen Let's Encrypt gratuito. Actívalo desde tu panel (como Syspanel) para que no tengas errores de "Conexión no segura".
### ¿Cuánto tarda el proceso completo?
Si eres meticuloso y tienes las copias hechas, el proceso activo (sin contar la propagación de DNS) te llevará unas 2 o 3 horas si es la primera vez. La propagación de DNS puede tardar hasta 48 horas, pero normalmente en 2-4 horas ya funciona.
### ¿Y si mi tienda tiene un módulo que guarda la URL?
Algunos módulos de pago o de envío guardan la URL en sus propias tablas. El script SQL del Paso 4 debería cubrir la mayoría, pero si un módulo falla, lo mejor es ir a su configuración dentro del back-office y guardar de nuevo los cambios (eso actualiza sus tablas internas).
### ¿Debo usar "www" o sin "www"?
Es una decisión de SEO. Lo importante es la coherencia. Si decides usar https://www.tudominio.com, configura todo (PrestaShop y redirecciones) hacia esa versión. No mezcles.
Conclusión: Tu Tienda con Nueva Identidad
Cambiar la URL de tu tienda PrestaShop es un proceso quirúrgico, pero siguiendo estos pasos, es totalmente seguro y sin pérdida de datos.
Recuerda el mantra: Copia de seguridad, cambia la base de datos, regenera el .htaccess y configura las redirecciones 301. Con eso, tu tienda estará funcionando en el nuevo dominio en un abrir y cerrar de ojos, y Google te lo agradecerá.
Si te surge cualquier duda en el camino, no dudes en consultar con tu proveedor de hosting o con un desarrollador especializado en PrestaShop. ¡Buena suerte con tu nueva URL!
