🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cambiar la URL de tu PrestaShop (dominio) sin perder datos: WordPress y PrestaShop

Actualizado el 21 de enero de 2026

Cambiar la URL de tu tienda PrestaShop es una de esas tareas que, si no se hace con cuidado, puede convertirse en una auténtica pesadilla. No es tan sencillo como editar un archivo de texto; aquí entran en juego la base de datos, las rutas absolutas, los archivos de configuración y, por supuesto, el miedo a perder tus productos, pedidos o clientes.

Pero no te preocupes. Estás en el lugar correcto. En esta guía extensa y detallada, te voy a explicar paso a paso cómo cambiar dominio prestashop sin que se te caiga ni un solo dato por el camino. Hablaremos de cómo mover prestashop a un nuevo dominio, cómo cambiar url prestashop de forma segura y qué hacer si te has liado con un prestashop nuevo dominio. Además, al final encontrarás una sección de preguntas frecuentes para resolver esas dudas que siempre surgen.

Vamos a ir con calma, como si estuviéramos tomando un café y te lo explicara un amigo técnico. No necesitas ser un experto, solo seguir las instrucciones al pie de la letra.


Antes de empezar: Entendiendo el problema

Cuando hablamos de migrar prestashop a un dominio nuevo, no solo estamos cambiando un nombre en el navegador. PrestaShop guarda la URL en muchos sitios diferentes:

  1. En el archivo parameters.php (dentro de la carpeta config).
  2. En la tabla ps_shop_url de la base de datos MySQL.
  3. En las rutas absolutas de imágenes, enlaces y productos (a veces llamadas "URLs canónicas").
  4. En el caché, tanto el de Smarty (templates) como el de Doctrine (entidades).
  5. En el archivo .htaccess (para la reescritura de URLs amigables).

Si cambias el dominio en solo uno de estos sitios, tendrás una tienda rota. Por eso, el proceso que te voy a mostrar es integral: cubre archivos, base de datos y caché.

[INFO]: Esta guía es válida para PrestaShop 1.6, 1.7 y 8.x. Los pasos son prácticamente idénticos, aunque la ruta exacta de algunos archivos puede variar ligeramente. Te avisaré cuando haya diferencias importantes.


Fase 1: Preparación (La más importante)

Antes de tocar nada, vamos a blindarnos. Un error aquí puede costarte caro, así que dedica 15 minutos a esta fase.

1.1. Haz una copia de seguridad completa (Backup)

Esto no es negociable. Necesitas dos copias:

  • Copia de los archivos: Descarga la carpeta completa de tu PrestaShop (la que contiene config, admin, img, themes, etc.) mediante FTP (FileZilla, por ejemplo) o desde el administrador de archivos de tu hosting.
  • Copia de la base de datos: Entra a tu panel de control (cPanel, Plesk, Syspanel, etc.) y busca la herramienta "phpMyAdmin". Selecciona tu base de datos, haz clic en "Exportar" y guarda el archivo SQL resultante.

[WARNING]: Si tu hosting usa Syspanel, recuerda que el acceso al panel de control es a través del puerto 2106 (ej: https://tu-dominio.com:2106). Ahí encontrarás el gestor de archivos y las herramientas de bases de datos.

1.2. Pon tu tienda en modo mantenimiento

Esto evitará que clientes reales entren a la tienda mientras haces cambios y vean errores. Ve a tu panel de administración de PrestaShop (tu-dominio.com/admin) -> Preferencias -> Mantenimiento y activa la opción. También es buena idea crear un mensaje personalizado como "Estamos mejorando la tienda, vuelve en unos minutos".

1.3. Revisa tu nuevo dominio o subdominio

Asegúrate de que el prestashop nuevo dominio ya está registrado y apunta a tu servidor. Si vas a usar un subdominio (ej: tienda.midominio.com), crea el subdominio en el panel de tu hosting. No hace falta que instales nada, solo que el DNS resuelva correctamente.


Fase 2: Migración de archivos (Mover PrestaShop)

Ahora sí, vamos a trabajar con los archivos. Hay dos escenarios posibles:

2.1. Escenario A: Mismo servidor, nuevo dominio

Este es el caso más sencillo. Simplemente tienes que copiar o renombrar la carpeta.

  1. Ve al gestor de archivos de tu hosting (o usa FTP).
  2. Si tu tienda está en la raíz (public_html), lo ideal es crear una subcarpeta para el nuevo dominio, o si el nuevo dominio es el principal, mover todo el contenido a la raíz.
  3. Si vas a cambiar de midominio.com a nuevodominio.com, y ambos apuntan al mismo espacio, puedes renombrar la carpeta principal o copiar el contenido dentro de la nueva raíz.

[TIP]: Si tienes dudas de dónde está cada cosa, mira la estructura de carpetas. En cPanel, la raíz suele ser public_html. En Syspanel, suele ser domains/tu-dominio/public_html. Si creas un nuevo dominio en Syspanel, se creará una carpeta similar con el nombre del nuevo dominio.

2.2. Escenario B: Servidor nuevo o hosting distinto

Aquí la cosa se complica un poco más, pero el proceso es el mismo que subir cualquier web.

  1. Sube los archivos: Conecta por FTP al nuevo servidor y sube la carpeta completa de tu PrestaShop (la que descargaste en el backup) a la raíz del nuevo dominio.
  2. Importa la base de datos: En el nuevo hosting, crea una base de datos MySQL y un usuario con todos los privilegios. Luego, entra a phpMyAdmin de ese nuevo hosting, selecciona la base de datos vacía que creaste y haz clic en "Importar". Sube el archivo .sql que descargaste antes.
  3. Configura la conexión a la base de datos: Este es el paso clave. Busca el archivo config/parameters.php en tu instalación. Ábrelo con un editor de texto (Notepad++ o similar) y modifica los parámetros database_host, database_name, database_user y database_password para que coincidan con los datos de tu nuevo hosting.

[WARNING]: Si no editas parameters.php, PrestaShop intentará conectarse a la base de datos antigua y fallará. Verás un error de conexión a la base de datos o una pantalla en blanco.


Fase 3: Cambiar la URL en la base de datos (El corazón de la operación)

Este es el paso que más miedo da, pero es sencillo si lo haces con lógica. Vamos a usar phpMyAdmin para actualizar las referencias al dominio antiguo.

  1. Entra a phpMyAdmin de la base de datos de tu tienda (la que estás usando ahora, ya sea la vieja o la nueva).
  2. Selecciona tu base de datos en el panel izquierdo.
  3. Haz clic en la pestaña "SQL" para ejecutar consultas.

Vamos a ejecutar una serie de comandos SQL. IMPORTANTE: Reemplaza www.tudominioantiguo.com y tudominionuevo.com con tus URLs reales. No olvides la www si la usabas.

Paso 1: Actualizar la tabla principal de URLs

Ejecuta esta consulta:

UPDATE ps_shop_url SET domain='tudominionuevo.com', domain_ssl='tudominionuevo.com', physical_uri='/';

[INFO]: La tabla puede llamarse ps_shop_url o tu_prefijo_shop_url. Si tu prefijo es prestashop_, será prestashop_shop_url. Lo puedes ver en el archivo parameters.php, en el parámetro database_prefix.

Paso 2: Buscar y reemplazar en todas las tablas

PrestaShop guarda la URL en muchas tablas (productos, categorías, CMS, etc.). La forma más segura de cambiarla es hacer un "buscar y reemplazar" en toda la base de datos, pero con cuidado.

Ejecuta esta consulta, que actualiza las URLs en las tablas más comunes:

UPDATE ps_product SET description = REPLACE(description, 'http://www.tudominioantiguo.com', 'http://tudominionuevo.com');
UPDATE ps_product SET description_short = REPLACE(description_short, 'http://www.tudominioantiguo.com', 'http://tudominionuevo.com');
UPDATE ps_category SET description = REPLACE(description, 'http://www.tudominioantiguo.com', 'http://tudominionuevo.com');
UPDATE ps_cms SET content = REPLACE(content, 'http://www.tudominioantiguo.com', 'http://tudominionuevo.com');
UPDATE ps_meta SET description = REPLACE(description, 'http://www.tudominioantiguo.com', 'http://tudominionuevo.com');
UPDATE ps_meta SET keywords = REPLACE(keywords, 'http://www.tudominioantiguo.com', 'http://tudominionuevo.com');

Paso 3: La forma "pro" (Recomendado)

Copiar y pegar todas las tablas a mano es un rollo. Existe una herramienta llamada "Better Search Replace" (BSR) que se usa mucho en WordPress, pero para PrestaShop, la mejor opción es usar un script SQL que recorra todas las tablas.

Ejecuta esto (es un procedimiento almacenado que hace el trabajo sucio):

DROP PROCEDURE IF EXISTS replace_url;

DELIMITER //
CREATE PROCEDURE replace_url()
BEGIN
  DECLARE done INT DEFAULT 0;
  DECLARE table_name VARCHAR(255);
  DECLARE cur CURSOR FOR
    SELECT table_name
    FROM information_schema.tables
    WHERE table_schema = DATABASE();
  DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;

  OPEN cur;
  read_loop: LOOP
    FETCH cur INTO table_name;
    IF done THEN
      LEAVE read_loop;
    END IF;
    SET @sql = CONCAT('UPDATE `', table_name, '` SET `', 'description', '` = REPLACE(`', 'description', '`, \'http://www.tudominioantiguo.com\', \'http://tudominionuevo.com\') WHERE `', 'description', '` LIKE \'%http://www.tudominioantiguo.com%\'');
    PREPARE stmt FROM @sql;
    EXECUTE stmt;
    DEALLOCATE PREPARE stmt;
  END LOOP;
  CLOSE cur;
END //
DELIMITER ;

CALL replace_url();

[WARNING]: Este procedimiento solo reemplaza en la columna description. Para una solución completa, necesitarías hacer lo mismo para columnas como content, link_rewrite, meta_title, etc. Si no te sientes cómodo con SQL, te recomiendo usar un plugin de pago como "PrestaShop Clean URL" o contratar a un profesional para este paso.

Paso 4: Actualizar la tabla de configuración

Ejecuta esta consulta para actualizar la URL base que se guarda en la configuración:

UPDATE ps_configuration SET value = 'http://tudominionuevo.com' WHERE name IN ('PS_SHOP_DOMAIN', 'PS_SHOP_DOMAIN_SSL');

Fase 4: Configurar el archivo parameters.php (Si no lo hiciste antes)

Este archivo es el que le dice a PrestaShop dónde está su base de datos y qué URL tiene. Si has movido la tienda a un servidor nuevo, ya lo modificaste. Si no, ahora es el momento.

Abre config/parameters.php y busca las líneas que empiezan por 'database_host', 'database_name', 'database_user', 'database_password'. Asegúrate de que los valores son los correctos.

También busca la línea 'PS_SHOP_DOMAIN' y 'PS_SHOP_DOMAIN_SSL' y cámbialas por tu nuevo dominio.


Fase 5: Limpiar la caché y regenerar el .htaccess

PrestaShop guarda mucha información en caché para ir más rápido. Si no la limpias, seguirá mostrando la URL antigua.

5.1. Limpiar la caché de Smarty

  1. Ve a tu panel de administración (tu-dominio.com/admin).
  2. Entra en Parámetros avanzados -> Rendimiento.
  3. Haz clic en el botón "Vaciar la caché" que aparece en la parte superior de la página.
  4. También puedes borrar manualmente la carpeta var/cache (en PrestaShop 1.7 y 8) o cache (en PrestaShop 1.6) mediante FTP. Borra todos los archivos que haya dentro, pero no la carpeta en sí.

5.2. Regenerar el archivo .htaccess

El archivo .htaccess contiene las reglas de reescritura de URLs amigables. Si no lo regeneras, tendrás errores 404 en todas tus páginas.

  1. En tu panel de administración, ve a Parámetros avanzados -> Herramientas (o Configuración de URLs amigables en algunas versiones).
  2. Activa la opción "Usar URL amigable" si no está activada, y luego desactívala y actívala de nuevo. Esto fuerza a PrestaShop a regenerar el archivo.
  3. Si no funciona, borra el archivo .htaccess de la raíz de tu tienda y luego repite el paso anterior.

Fase 6: Comprobaciones finales y puesta en marcha

Ya casi lo tienes. Ahora toca verificar que todo está en orden.

  1. Desactiva el modo mantenimiento desde el panel de administración.
  2. Entra a tu tienda con el nuevo dominio y navega por algunas páginas: productos, categorías, carrito, checkout.
  3. Entra al panel de administración con la nueva URL (ej: tudominionuevo.com/admin).
  4. Revisa las imágenes: Haz clic en un producto y verifica que las imágenes cargan correctamente. Si no, puede que necesites regenerar las miniaturas (Parámetros avanzados -> Rendimiento -> Regenerar miniaturas).
  5. Haz una búsqueda en Google de site:tudominioantiguo.com para ver qué URLs antiguas hay indexadas. Esto es normal, pero ten en cuenta que tardarán en actualizarse.

[TIP]: Para evitar problemas de SEO, configura una redirección 301 desde el dominio antiguo al nuevo. Esto se hace en el panel de tu hosting (a menudo en la sección de "Redirecciones" o creando una regla en el .htaccess). Esta redirección le dice a Google que el contenido se ha movido de forma permanente.


Preguntas Frecuentes (FAQ)

¿Puedo cambiar el dominio sin tocar la base de datos?

No, es imposible. La base de datos es el corazón de PrestaShop y guarda la URL en decenas de tablas. Si no la actualizas, tendrás enlaces rotos, imágenes caídas y problemas de SEO.

¿Qué pasa si me olvido de limpiar la caché?

Verás la URL antigua en el navegador, aunque hayas cambiado el dominio. La caché es una "foto" de tu web que se muestra para ir más rápido. Si no la limpias, seguirás viendo la foto antigua.

¿Pierdo mis pedidos, clientes o productos al hacer este cambio?

No, si haces el backup y sigues los pasos correctamente. Los datos están en la base de datos, y solo estás cambiando las referencias de URL. Los productos, clientes y pedidos permanecen intactos.

¿Qué es el puerto 2106?

Es el puerto de acceso al panel de control Syspanel. Si tu hosting usa este panel, para acceder a la gestión de archivos, bases de datos o DNS, debes escribir https://tu-dominio.com:2106 en tu navegador. Es una medida de seguridad para no exponer el panel en el puerto estándar (443).

¿Es lo mismo "mover prestashop" que "cambiar la URL"?

Sí, en la práctica son lo mismo. Mover implica cambiar la ubicación (servidor o dominio), y la URL es la dirección donde

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel