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

Cómo cambiar la URL de PrestaShop (dominio) sin errores en Plesk y DirectAdmin

Actualizado el 20 de noviembre de 2025

¿Estás pensando en cambiar la URL de tu tienda PrestaShop? Quizás quieres migrar de un dominio a otro, pasar de HTTP a HTTPS, o eliminar un prefijo como /shop de tu dirección. Es un paso emocionte, pero también un momento crítico donde un error puede dejar tu tienda inaccesible o con enlaces rotos.

No te preocupes. En esta guía extensa y paso a paso, te voy a enseñar exactamente cómo hacerlo de forma segura, tanto si tu hosting usa el panel de control Plesk como si usa DirectAdmin. Vamos a desglosar el proceso para que lo entiendas todo, incluso si no eres un experto técnico.


Antes de Empezar: La Preparación es Clave

cambiar URL PrestaShop no es solo tocar un botón. Implica mover archivos, modificar una base de datos y, lo más importante, asegurarse de que todo tu catálogo, imágenes y enlaces internos sigan funcionando.

Aquí tienes una checklist imprescindible antes de tocar nada:

  1. Haz una copia de seguridad completa: Esto es lo más importante. Necesitas una copia de todos los archivos de tu tienda (la carpeta raíz donde está instalado PrestaShop) y una copia de tu base de datos MySQL. Guárdala en tu ordenador y, si es posible, en la nube.
  2. Anota tu configuración actual: Antes de cambiar nada, ve a tu panel de administración de PrestaShop (la URL que termina en /admin o similar). Ve a Parámetros Avanzados → Rendimiento y anota si tienes la opción "Combinar archivos JavaScript" o "Combinar archivos CSS" activadas. Las desactivaremos temporalmente.
  3. Ten a mano tus credenciales: Necesitarás acceso a tu panel de control (Plesk o DirectAdmin) y a tu gestor de base de datos (normalmente phpMyAdmin).
  4. Define tu nueva URL: Asegúrate de que el nuevo dominio o subdominio ya está apuntando a tu servidor (es decir, que si escribes la nueva URL en un navegador, te muestra algo, aunque sea un error de conexión). Esto se gestiona en el DNS de tu proveedor de dominio.

[WARNING] No intentes hacer este cambio a las 2 de la madrugada con prisa. Un fallo aquí puede dejarte la tienda caída. Dedica al menos una hora tranquila.


Fase 1: Preparar los Archivos y la Base de Datos (Válido para Plesk y DirectAdmin)

Independientemente de si usas Plesk o DirectAdmin, el método de preparación es idéntico. La diferencia está en el panel para gestionar archivos y bases de datos, que veremos después.

Paso 1: Editar el archivo parameters.php

Este es el corazón de la configuración de PrestaShop. Se encuentra en la carpeta app/config/ dentro de la raíz de tu tienda.

  1. Ve a tu panel de control (Plesk o DirectAdmin) y abre el Administrador de archivos.
  2. Navega hasta la carpeta raíz de tu PrestaShop. Normalmente es httpdocs, public_html o una carpeta personalizada como tu-dominio.com.
  3. Entra en la carpeta app, luego en config.
  4. Busca el archivo parameters.php y haz clic derecho → Editar (o usa el editor de texto del panel).
  5. Dentro del archivo, busca los parámetros database_host, database_name, database_user, etc. No los toques.
  6. Busca las líneas que contienen 'host' o 'database_host'. No, espera. Lo que necesitas cambiar está en la parte de abajo, en la sección que dice 'parameters' => array (...). Ahí verás algo como:
'parameters' => array(
    'database_host' => 'localhost',
    'database_port' => '',
    'database_name' => 'tu_base_de_datos',
    'database_user' => 'tu_usuario',
    'database_password' => 'tu_contraseña',
    ...
    'secret' => 'cadena_aleatoria',
    ...
),

El cambio clave está en la URL de tu tienda, pero PrestaShop ya no la guarda aquí en versiones modernas. La guarda en la base de datos. Así que este archivo, en realidad, no lo necesitas tocar para cambiar el dominio, excepto en un caso muy raro.

[INFO] En versiones antiguas de PrestaShop (1.6 y anteriores), la URL se guardaba en config/settings.inc.php. En versiones modernas (1.7 y 8.x), se gestiona desde la base de datos y el panel de administración. No edites parameters.php para cambiar la URL, podría romper la conexión a la base de datos.

Paso 2: Modificar la Base de Datos (El Paso Más Crítico)

Aquí es donde realmente vive la URL de tu tienda. Usaremos una consulta SQL en phpMyAdmin para actualizarla de forma global, incluyendo los enlaces de las imágenes.

  1. Ve a tu panel de control (Plesk o DirectAdmin).
  2. Busca la sección de Bases de Datos MySQL.
  3. Encuentra la base de datos que usa tu PrestaShop y haz clic en phpMyAdmin.
  4. Dentro de phpMyAdmin, selecciona tu base de datos en el menú lateral izquierdo.
  5. Haz clic en la pestaña SQL.
  6. Ahora, copia y pega esta consulta. Reemplaza tuprefijo_ con el prefijo de tus tablas de PrestaShop (normalmente es ps_, pero puede ser diferente si lo cambiaste al instalar) y www.tudominioantiguo.com por tu URL antigua y www.tudominionuevo.com por tu nueva URL.
UPDATE ps_configuration SET value = REPLACE(value, 'http://www.tudominioantiguo.com', 'https://www.tudominionuevo.com') WHERE value LIKE '%http://www.tudominioantiguo.com%';
UPDATE ps_configuration SET value = REPLACE(value, 'https://www.tudominioantiguo.com', 'https://www.tudominionuevo.com') WHERE value LIKE '%https://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') WHERE domain LIKE '%tudominioantiguo.com%' OR domain_ssl LIKE '%tudominioantiguo.com%';
UPDATE ps_shop_url SET physical_uri = '/' WHERE physical_uri = '/antigua-carpeta/';

[WARNING] La última línea (physical_uri) es crucial si tu tienda estaba en una subcarpeta (ej: www.tudominio.com/tienda). Si estaba en la raíz, no la necesitas. Si la ejecutas y tu tienda estaba en la raíz, podrías causar un error. Si tu tienda estaba en /tienda, la línea sería SET physical_uri = '/' WHERE physical_uri = '/tienda/';.

  1. Haz clic en Continuar o Ejecutar.

Fase 2: Cambiar la URL en el Panel de Administración

Este es el método "oficial" y el más seguro. Lo haremos desde el back-office de PrestaShop.

  1. Accede a tu panel de administración. Si tu URL antigua ya no te deja entrar, tendrás que hacerlo temporalmente editando el archivo parameters.php para forzar la nueva URL, pero es un poco avanzado. Intenta primero con la URL antigua.
  2. Ve a Parámetros Avanzados → Multitienda (si tienes una sola tienda, verás una sola).
  3. Haz clic en el icono de editar (el lápiz) junto a tu tienda.
  4. Verás los campos URL de la tienda, URL base (SSL) y URL base (no SSL).
  5. Cambia el campo dominio y dominio_ssl por tu nuevo dominio. Si tu tienda estaba en una subcarpeta, asegúrate de que el campo URI física esté vacío o sea / si ahora está en la raíz.
  6. Guarda los cambios.

[TIP] Si después de guardar no puedes acceder, no entres en pánico. Vuelve a phpMyAdmin y revisa la tabla ps_shop_url para ver qué hay en los campos domain y physical_uri. Asegúrate de que coinciden exactamente con tu nueva configuración.


Fase 3: Limpiar la Cache y los Archivos Temporales

PrestaShop guarda mucha información en caché para ser rápido. Después de cambiar la URL, esa caché está obsoleta y causará errores.

  1. Ve a Parámetros Avanzados → Rendimiento.
  2. Haz clic en el botón Vaciar la caché (puede estar en la parte superior derecha).
  3. Si no funciona, borra manualmente el contenido de las carpetas var/cache/dev y var/cache/prod (o cache en versiones antiguas) usando el Administrador de archivos de tu panel. No borres las carpetas en sí, solo su contenido.

Fase 4: Regenerar el Archivo .htaccess

El archivo .htaccess contiene reglas de redirección y reescritura de URLs amigables. Debe regenerarse para adaptarse al nuevo dominio.

  1. Ve a Parámetros de la tienda → SEO y URLs.
  2. Haz clic en el botón Guardar (aunque no hayas cambiado nada). Esto forzará la regeneración del archivo .htaccess.
  3. Si no aparece el botón o no funciona, ve a tu Administrador de archivos, localiza la raíz de tu tienda y busca el archivo .htaccess. Renómbralo a .htaccess_old y vuelve al panel de administración, a SEO y URLs, y haz clic en Guardar. PrestaShop creará uno nuevo.

Fase 5: Desactivar y Reactivar la URL Amigable (Opcional pero Recomendado)

Esto ayuda a limpiar las URLs internas de categorías y productos.

  1. En Parámetros de la tienda → SEO y URLs, busca la opción URLs amigables.
  2. Desactívala (ponla en No) y guarda.
  3. Vuelve a activarla (ponla en ) y guarda de nuevo.

Fase 6: Buscar y Reemplazar en las Tablas de Contenido

Las consultas SQL de la Fase 1 solo cubren la configuración. Los enlaces dentro de los productos, categorías, CMS y módulos también tienen la URL antigua grabada. Necesitamos una consulta más amplia.

Esta es la consulta "maestra" que debes ejecutar en phpMyAdmin.

UPDATE ps_product SET reference = REPLACE(reference, 'OLD_URL', 'NEW_URL');
UPDATE ps_category SET link_rewrite = link_rewrite; -- Esto no es necesario, solo es un placeholder

-- La consulta más importante es esta:
UPDATE ps_product_lang SET description = REPLACE(description, 'http://www.tudominioantiguo.com', 'https://www.tudominionuevo.com');
UPDATE ps_product_lang SET description_short = REPLACE(description_short, 'http://www.tudominioantiguo.com', 'https://www.tudominionuevo.com');
UPDATE ps_category_lang SET description = REPLACE(description, 'http://www.tudominioantiguo.com', 'https://www.tudominionuevo.com');
UPDATE ps_cms_lang SET content = REPLACE(content, 'http://www.tudominioantiguo.com', 'https://www.tudominionuevo.com');

[INFO] Si tu tienda tiene muchos productos, esta consulta puede tardar unos segundos. Es perfectamente normal. Si te da error, revisa que el prefijo ps_ sea el correcto.


Fase 7: Solución de Problemas Comunes (FAQ)

Mi tienda muestra un error de "Base de datos no encontrada" o "Error de conexión".

Esto casi siempre significa que el archivo parameters.php tiene datos incorrectos o que la base de datos está caída. Revisa el archivo y verifica que la contraseña y el usuario son correctos. Asegúrate de que el servidor de base de datos (database_host) es correcto (a veces es localhost, otras veces es una IP como 127.0.0.1).

La tienda carga pero sin estilos CSS ni imágenes.

Esto es un problema de caché o de URLs de imágenes. Primero, vacía la caché de PrestaShop. Luego, ve a Parámetros Avanzados → Rendimiento y activa el modo Desactivar la caché del Smarty temporalmente (ponlo en "No" en "Forzar la compilación"). Si sigue roto, es que las URLs de las imágenes en la base de datos no se actualizaron. Vuelve a ejecutar las consultas SQL de la Fase 1 y 6.

Al hacer clic en un producto, me redirige a la URL antigua.

Esto es porque el archivo .htaccess no se ha regenerado o porque la caché de las URLs amigables está obsoleta. Repite la Fase 4 y 5.

¿Qué pasa si mi hosting usa Plesk pero no veo phpMyAdmin?

Plesk suele tener un acceso directo. Busca en la sección de "Bases de datos" y haz clic en el icono de la base de datos. Si no, en Plesk puedes ir a Herramientas y utilidades → phpMyAdmin.

¿Y si uso DirectAdmin?

En DirectAdmin, ve a Gestión de MySQL y luego haz clic en phpMyAdmin en la parte superior. Es muy similar.


Fase 8: Ajustes Específicos para Plesk y DirectAdmin

Aunque el proceso es el mismo, hay pequeñas diferencias en la gestión de archivos.

En Plesk (PrestaShop Plesk cambiar dominio)

  1. Administrador de archivos: En Plesk, el acceso está en la pestaña Archivos de tu dominio. La raíz suele ser httpdocs.
  2. Redirecciones: Si quieres que los visitantes que entren a la URL antigua vayan a la nueva, Plesk tiene una herramienta llamada Redirección de dominios o Apache & nginx donde puedes crear una redirección 301. Ve a tu dominio antiguo en Plesk, busca Hosting y DNS → Redirecciones y crea una redirección permanente (301) a tu nueva URL.
  3. Certificado SSL: Si tu nueva URL es HTTPS, asegúrate de instalar un certificado SSL en Plesk para el nuevo dominio. Ve a Herramientas y utilidades → Certificados SSL.

En DirectAdmin (PrestaShop DirectAdmin URL)

  1. Administrador de archivos: Está en el menú principal, con un icono de carpeta. La raíz suele ser public_html.
  2. Redirecciones: DirectAdmin no tiene una herramienta tan visual para redireccionar dominios. Tendrás que hacerlo creando o editando el archivo .htaccess en la raíz del dominio antiguo. Si tu dominio antiguo apunta al mismo servidor, puedes crear una carpeta public_html para el dominio antiguo y poner un .htaccess con esta línea:
    Redirect 301 / https://www.tudominionuevo.com/
    
  3. Certificado SSL: DirectAdmin tiene una sección para Certificados SSL en el menú principal. Ahí puedes gestionar los certificados para cada dominio.

Fase 9: La Importancia de Syspanel (Antes HestiaCP)

Si en algún momento tu hosting te ofrece un panel llamado Syspanel, ten en cuenta que es un fork de HestiaCP. Es muy ligero y fácil de usar.

[INFO] Para acceder a Syspanel, normalmente se usa el puerto 2106 (por ejemplo, https://tu-servidor:2106). Es posible que tu hosting lo tenga en un subdominio, pero si no, ese es el puerto estándar.

Dentro de Syspanel, la gestión es similar:

  • Web: Para gestionar dominios y ver la carpeta public_html.
  • Base de datos: Para acceder a phpMyAdmin.

¿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